Originariamente inviato da il pupo
ragazzi ho risolto, però ora ho degli errori:
1)Warning: session_start(): Cannot send session cache limiter - headers already sent (output started at c:\programmi\easyphp1-8\www\antichita cipriani_finale_2\index.php:8) in c:\programmi\easyphp1-8\www\antichita cipriani_finale_2\login.php on line 14
2)Notice: Undefined index: username in c:\programmi\easyphp1-8\www\antichita cipriani_finale_2\login.php on line 27
3)Notice: Undefined index: password in c:\programmi\easyphp1-8\www\antichita cipriani_finale_2\login.php on line 28
Benvenuto, ,Ora potrai acquistare i nostri prodotti
Notice: Undefined index: logout in c:\programmi\easyphp1-8\www\antichita cipriani_finale_2\login.php on line 63
4)Notice: Undefined index: nocookie in c:\programmi\easyphp1-8\www\antichita cipriani_finale_2\login.php on line 120
Codice PHP:
<?php
//gestione della sessione nel caso in cui i cookie sono disabilitati
if(IsSet($_POST['PHPSESSID']) && !IsSet($_COOKIE['PHPSESSID']))
{
$PHPSESSID=$_POST['PHPSESSID'];
header("Location: $redirect?PHPSESSID=$PHPSESSID"); //si ricarica la pagina di login
}
session_start(); //si inizia o continua la sessione //Primo Warning
//controllo user e passwd da login
include("config.inc.php");
$db = mysql_connect($db_host, $db_user, $db_password);
if ($db == FALSE)
die ("Errore nella connessione. Verificare i parametri nel file config.inc.php");
mysql_select_db($db_name, $db)
or die ("Errore nella selezione del database. Verificare i parametri nel file config.inc.php");
$nome= $_POST['username']; //errore 27
$password=$_POST['password']; //errore 28
$query ="SELECT nome_utente FROM utente WHERE nome_utente ='$nome' and password='$password' LIMIT 0, 1";
$result =mysql_query($query, $db);
$row=mysql_fetch_array($result);
$utente=$row['nome_utente'];
if (mysql_query($query, $db) and ($utente==$nome))
{
echo "Benvenuto, [b]$nome[/b],Ora potrai acquistare i nostri prodotti";
$_SESSION['user']=$nome;
}
else
{
echo '
Nome utente e/o password errata. [url="index.php"]riprova[/url].
';
echo '
Sei non sei registrato [url="register.php"]REGISTRATI[/url].
';
}
mysql_close($db);
//creazione cookie per login automatico
if(IsSet($_POST['ricorda']) && IsSet($_SESSION['user']))
{
$cok=md5($nome)."%%".$password;
setcookie("sav_user",$cok,time()+31536000);
}
//logout
if($_GET['logout']==1) //errore 63
{
$_SESSION=array(); // Desetta tutte le variabili di sessione.
session_destroy(); //DISTRUGGE la sessione.
if(IsSet($_COOKIE['sav_user'])) //se presente si distrugge il cookie di login automatico
setcookie("sav_user",$cok,time()-31536000);
header("Location: $redirect"); //si ricarica la pagina di login
exit; //si termina lo script in modo da ritornare alla schermata di login
}
//controllo user e passwd da cookie
if(IsSet($_COOKIE['sav_user']))
{
$info_cok=$_COOKIE['sav_user'];
$cok_user=strtok($info_cok,"%%");
$cok_pass=strtok("%%");
setcookie("sav_user",$info_cok,time()+31536000);
if($cok_user==md5($login_user) && $cok_pass==$pass_user)
$_SESSION['user']=$login_user;
}
//caso in cui si vuole ricordare il login, ma i cookie sono off
if(!IsSet($_COOKIE['PHPSESSID']) && IsSet($_POST['ricorda']))
header("Location: $redirect?nocookie=1");
?>
<html>
<head>
</head>
<body>
<?php
$PHPSESSID=session_id();
if(!IsSet($_SESSION['user'])) //non siamo loggati, pagina di login
{
//errore 120 if($_GET['nocookie']==1) //i cookie sono off e si vuole ricordare il login
print("Spiacente, ma con i cookie disabilitati non posso fare i miracoli ;)
Attivali se vuoi ricordare il tuo login.
");
print("
<FORM METHOD=POST ACTION=\"login.php\">
username:
<INPUT TYPE=TEXT SIZE=20 NAME=username>
password:
<INPUT TYPE=PASSWORD SIZE=20 NAME=password>
ricordami: <INPUT TYPE=CHECKBOX NAME=ricorda VALUE=1>
<INPUT TYPE=SUBMIT NAME=SUBMIT VALUE=\"Loggami\">
");
if(!IsSet($_COOKIE['PHPSESSID'])) //i cookie sono off, dobbiamo propagare noi il PHPSESSID
print("<INPUT TYPE=HIDDEN NAME=PHPSESSID VALUE=$PHPSESSID>");
print("</FORM>");
}
else //siamo loggati pagina riservata
{
$username=$_SESSION['user'];
print("Il tuo ID ?: $PHPSESSID
");
print("Sei loggato come: $login_user
");
print("<A HREF=\"login.php?logout=1\">logout</A>");
}
?>
</body>
</html>