PHP – My SQL – Login
DOWNLOAD
Creazione database
Entriamo in phpMyAdmin
In alto posizioniamoci su localhost> mydatabase
Selezioniamo linguetta “SQL”, nell’area di input copiamo i comandi SQL:
CREATE TABLE IF NOT EXISTS `members` ( `id` int(4) NOT NULL AUTO_INCREMENT, `username` varchar(65) NOT NULL DEFAULT '', `password` varchar(65) NOT NULL DEFAULT '', `email` varchar(255) NOT NULL DEFAULT '', `attivazione` varchar(255) NOT NULL DEFAULT '', PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=3 ;
Clicchiamo sul bottone a destra ‘Esegui’
Creazione Form Login
main_login.php
Invierà i dati a “checklogin.php”, in particolare:
– name=”myusername”
– name=”mypassword”
<table width="300" border="0" align="center" cellpadding="0" cellspacing="1" bgcolor="#CCCCCC"> <tr> <form name="form1" method="post" action="checklogin.php"> <td> <table width="100%" border="0" cellpadding="3" cellspacing="1" bgcolor="#FFFFFF"> <tr> <td colspan="3"><strong>Login</strong></td> </tr> <tr> <td width="78">Username</td> <td width="6">:</td> <td width="294"><input name="myusername" type="text" id="myusername"></td> </tr> <tr> <td>Password</td> <td>:</td> <td><input name="mypassword" type="text" id="mypassword"></td> </tr> <tr> <td> </td> <td> </td> <td><input type="submit" name="Submit" value="Login"></td> <td> </td> <td> </td> </tr> </table> </td> </form> </tr> </table>
Check Login
checklogin.php
Interroga il database se
– login corretto -> login_success.php
– login errato -> checklogin.php restituisce un messaggio di errore
<?php $host="localhost"; //lasciare com'è se utilizzate bluehost $username="lucedigi_user"; $password="mypassword"; $db_name="lucedigi_testphp"; // database name $tbl_name="members"; //Indicate la tabella presente nel database a cui si deve collegare // Connetti al server e seleziona il database mysql_connect("$host", "$username", "$password")or die("cannot connect"); mysql_select_db("$db_name")or die("DB non connesso"); // ricevo username e password dal form HTML $myusername=$_POST['myusername']; $mypassword=$_POST['mypassword']; //Protezione da MySQL injection $myusername = stripslashes($myusername); $mypassword = stripslashes($mypassword); $myusername = mysql_real_escape_string($myusername); $mypassword = mysql_real_escape_string($mypassword); // Invio una query di ricerca nella tabella, all'interno campi username e password $sql="SELECT * FROM $tbl_name WHERE username='$myusername' and password='$mypassword'"; $result=mysql_query($sql); // $count=mysql_num_rows($result); // if($count==1){ // Verifica dati e reindirizza a "login_success.php" session_register("myusername"); session_register("mypassword"); header("location:login_success.php"); } else { echo "Username o Password errati!"; } ?>
Login Success
login_success.php
<?php session_start(); if(!session_is_registered(myusername)){ header("location:main_login.php"); } ?> <html> <body> Correttamente Loggato! </body> </html>