Ciao,ho fatto in locale questo sistema di login e logout tramite l'ip degli utenti e va benissimo ma volevo sapere la differenza tra questo metodo e il sistema con i cookie di cui si trovano tante guide in internet: pro e contro di tutti e due i metodi e quindi quale metodo è migliore e la differenza tra un metodo e l'altro per la pubblicazione online e di conseguenza quale è più idoneo per la pubblicazione online.
Potete anche dirmi come fare il reindirizzamento automatico quando un utente si logga?
Grazie
REGISTRAZIONEUTENTE.PHP
<html>
<head>
<title>registrazione</title>
</head>
<body>
<?php
$db = "C:\Program Files (x86)\Apache Software Foundation\Apache2.2\htdocs\sitofilmografia\DATABA SE\italian_movie_review.mdb";
$sc = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=$db;";
// creo l'oggetto COM contenente l'oggetto Connection per interfacciarmi al data base Access
$cn=new COM("ADODB.Connection");
// apro la connessione
$cn->open($sc); //richiamo il metodo open sull'oggetto $cn
//definisco la query
$datanascita= $_POST['giorno']."/".($_POST['mese']+1)."/".$_POST['anno'];
print "<br>La data trasmessa->".$datanascita;
$query=" INSERT INTO Utente (Mail,Pass,Nome,Cognome,DataNascita,Amministratore ) VALUES ('".$_POST['mail']."' , '".$_POST['pass']."', '".$_POST['nome']."', '".$_POST['cognome']."', '$datanascita','0' )";
// Effettuo l'inserimento dei dati
$cn->Execute($query); //richiamo il metodo execute sull'oggetto $cn
//Lancio un messaggio di conferma
print " <p> Registrazione utente effettuata con successo</p> ";
print " <br> <a href='index_movie.php'> HOME </a>";
//Chiuso la connessione
$cn->close();
?>
</body>
</html>
LOGIN.PHP
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<link rel="stylesheet" type="text/css" href="css_movie.css">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title> login.php </title>
</head>
<body>
<body bgcolor="#080023">
<?PHP
$db = "C:\Program Files (x86)\Apache Software Foundation\Apache2.2\htdocs\sitofilmografia\DATABA SE\italian_movie_review.mdb";
$sc = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=$db;";
$cn = new COM("ADODB.Connection");
$cn->open($sc);
$recset = new COM("ADODB.Recordset");
$mail=$_POST['mail_login'];
$pass=$_POST['pass_login'];
$query= "select * from utente where mail='".$mail."' AND pass='".$pass."'";
$recset->open($query,$sc);
if ($recset->EOF==FALSE)
{
print "<p> Login riuscito </p>";
if ($recset->fields['amministratore']->value==-1){
print"<a href='amministratore/index.html'> Premi qui per andare alla pagina di amministrazione </a> <br>";
print"<a href='index_movie.php'> HOME </a>";
}
else
{
$IP = $_SERVER[ 'REMOTE_ADDR' ];
$query2 = "INSERT INTO Sessione (mail,ip) VALUES ('".$recset->fields[mail]."','".$IP."')";
$cn->Execute($query2);
print"<p> <a href='index_movie.php'> <u> HOME </u> </p>";
}
}
else
{
print "<p> Login non riuscito!</p> <br>";
print "<p> E-mail e/o password errati </p><br>";
print" <p> <a href='index_movie.php'> <u> HOME </u> </p>";
}
?>
</body>
</html>
LOGOUT.PHP
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<link rel="stylesheet" type="text/css" href="css_movie.css">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title> logout.php </title>
</head>
<body>
<?PHP
$db = "C:\Program Files (x86)\Apache Software Foundation\Apache2.2\htdocs\sitofilmografia\DATABA SE\italian_movie_review.mdb";
$sc = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=$db;";
$cn = new COM("ADODB.Connection");
$cn->open($sc);
$ip=$_POST['ip'];
$query= "DELETE from sessione where ip='".$ip."'";
$cn->Execute($query);
print "Logout riuscito";
print"<p> <a href='index_movie.php'> <u> HOME </u> </p>";
$cn->close();
?>
</body>
</html>