Advertisement
Ventuj

Untitled

Dec 18th, 2017
249
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 2.24 KB | None | 0 0
  1. <?php
  2. $DB_host = 'bmailincsplogin.mysql.db';
  3. $DB_user = '';
  4. $DB_password = '';
  5. $DB_name = '';
  6. $DB_port = '3306';
  7.  
  8. $link = mysql_connect($DB_host, $DB_user, $DB_password, $DB_port);
  9. if (!$link) {
  10.     die ('Non riesco a connettermi: ' . mysql_error());
  11. }
  12.  
  13. $db_selected = mysql_select_db($DB_name, $link);
  14. if (!$db_selected) {
  15.     die ("Errore nella selezione del database: " . mysql_error());
  16. }
  17.  
  18. if($_POST) {
  19.     effettua_login();
  20. } else {
  21.     mostra_form();
  22. }
  23.  
  24. function mostra_form()
  25. {
  26.     // mostro un eventuale messaggio
  27.     if(isset($_GET['msg'])) {
  28.         echo '<b>'.htmlentities($_GET['msg']).'</b><br /><br />';
  29.     }
  30.     ?>
  31.     <form name="form_login" method="post" action="">
  32.         <label>nome: <input name="nome" type="text" value="" /></label><br />
  33.         <label>password: <input name="password" type="password" value="" /></label><br />
  34.         <input name="invia" type="submit" value="Invia" />
  35.     </form>
  36.     <?
  37. }
  38.  
  39. function effettua_login()
  40. {
  41.     // recupero il nome e la password inseriti dall'utente
  42.     $nome      = trim($_POST['nome']);
  43.     $password  = trim($_POST['password']);
  44.     // verifico se devo eliminare gli slash inseriti automaticamente da PHP
  45.     if(get_magic_quotes_gpc()) {
  46.         $nome      = stripslashes($nome);
  47.         $password  = stripslashes($password);
  48.     }
  49.  
  50.     // verifico la presenza dei campi obbligatori
  51.     if(!$nome || !$password) {
  52.         $messaggio = urlencode("Non hai inserito il nome o la password");
  53.         header("location: $_SERVER[PHP_SELF]?msg=$messaggio");
  54.         exit;
  55.     }
  56.     // effettuo l'escape dei caratteri speciali per inserirli all'interno della query
  57.     $nome     = mysql_real_escape_string($nome);
  58.     $password = mysql_real_escape_string($password);   
  59.  
  60.     // preparo ed invio la query
  61.     $query = "SELECT id FROM utenti WHERE nome = '$nome' AND pswd = MD5('$password')";
  62.     $result = mysql_query($query);
  63.     // controllo l'esito
  64.     if (!$result) {
  65.         die("Errore nella query $query: " . mysql_error());
  66.     }
  67.  
  68.     $record = mysql_fetch_array($result);
  69.  
  70.     if(!$record) {
  71.         $messaggio = urlencode('Nome utente o password errati');
  72.         header("location: $_SERVER[PHP_SELF]?msg=$messaggio");
  73.     } else {
  74.         session_start();
  75.         $_SESSION['user_id'] = $record['id'];
  76.         $messaggio = urlencode('Login avvenuto con successo');
  77.         header("location: $_SERVER[PHP_SELF]?msg=$messaggio");
  78.     }
  79. }
  80. ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement