View Full Version : Non riesco a settare i cookis in PHP
LordBerisha
17-03-2003, 23:40
Ciao a tutti.
Ho un problema con il settaggio di un cookie.
La sintassi del codice dovrebbe essere corretta,una cosa tipo:
setcookie("nome_cookie",$valore,time()+3600)
Ma se provo a verificare in un altra pagina se il cookie esiste con:
isset("nome_cookie");
non risulta presente.
Inoltre nella directory dei cookies del mio pc non compare niente di nuovo.
Tuute le fonti in mio possesso (manuale php e svariate guide online) mi dicono che la sintassi è esatta...
Qualche suggeriento?[/b]
I cookies vanno settati prima di qualsiasi output sulla pagina HTML...
I cookies diventano disponibili solo nella pagina successiva nella quale li abbiamo settati...
Se non risulta definita la variabile $nome_cookie...prova a recuperare il cookie con il vettore globale associativo $_COOKIE["nome_cookie"]...
LordBerisha
18-03-2003, 10:16
La definizione del cookie è già prima di qualsiasi output HTML e la verifica del cookie avviene in un'altra pagina, tutto da manuale.
Hio provato a recuperare il cookie sia con $_COOKIE["nome_cookie"]
sia con $HTTP_COOKIE_VARS["nome_cookie"] che con $nome_cookie.
Niente da fare.
Ho provato a controllare la directory dei cookies del mio pc ma non si vede niente quindi credo che il problema sia nel settaggio.
Sicuro che non fai alcun output ? Potresti postarmi la pagina esatta (fin dal primo rigo) fino alla definizione del cookie ?
LordBerisha
18-03-2003, 12:25
<?php
//conferma i permessi degli utenti
//input user,log,fwd
include'lbf_settings.php';
//settings per la connessione al database
$db_host="....";
$db_login="....";
$db_pass="..........";
//connessione al database
$link=mysql_connect("$db_host", "$db_login", "$db_pass")
or die ( "Non riesco a connettermi a <b>$db_host");
mysql_select_db ($lbf_database, $link)
or die ( "Non riesco a selezionare il db $lbf_database<br>");
$dati= "SELECT user as u,password as p FROM utenti WHERE user='$user'";
$list=mysql_query ($dati,$link) or die("Invalid query". mysql_error());
$list=mysql_fetch_assoc($list);
//Se la password inserita corrisponde effettua il login
if ($list[u]!="" && $list[p]==$pass){
setcookie("nvb",$user,time()+3600);
echo"<html><head>";
echo"<title>Benvenuto $user</title>";
Echo "<META HTTP-EQUIV=Refresh CONTENT=\"3; URL=http://www.novebraccia.net/$fwd?user=$user&log=$log\"> ";
echo"</head>";
echo "<body>" ;
echo "<table width=\"100%\"> \n<td align=\"center\"><br>\n\n";
Echo "<table width=\"700\" border=\"0\" cellpadding=\"4\" cellspacing=\"2\" bordercolor=\"#0099FF\">";
Echo "<td valign=\"center\" align=\"center\">";
Echo "<font color=\"#0011FF\" size=\"3\">";
Echo "<br>";
Echo "<br>Benvenuto $user<br>Se il tuo browser non ti inoltra automaticamente clicca <a href=\"http://www.novebraccia.net/$fwd?user=$user&log=$log\">QUI</a><br>";
Echo "</td></table>";
Echo "</td></table>";
echo "</body>" ;
echo"</html>";
mysql_close($link);
}
//Se non corrisponde la pass chiede di nuovo i dati
else {
mysql_close($link);
echo"<html><head>";
echo"<title>Login</title>";
echo"</head>";
echo "<body>" ;
echo "<form action=\"login.php\" method=\"post\" \n";
echo "<table width=\"100%\"> \n<td align=\"center\"><br>\n\n";
Echo "<table width=\"700\" border=\"1\" cellpadding=\"4\" cellspacing=\"2\" bordercolor=\"#0099FF\">";
Echo "<td valign=\"center\" align=\"center\">";
Echo "<font color color=\"#0011FF\" size=\"3\">";
Echo "<br>";
Echo "<br>Username:<input name=\"user\" type=\"text\" maxlength=\"20\" size=\"20\">";
echo "</td>";
Echo "<input name=\"fwd\" type=\"hidden\" value=\"$fwd\">";
Echo "<tr><td align=\"center\">Password<input name=\"pass\" type=\"password\" maxlength=\"20\" size=\"20\"></td></tr>";
Echo "<tr><td align=\"center\"><input type=\"submit\" value=\"Collegami\">";
Echo "</tr></td></table>";
Echo "</td></table>";
echo "</form>";
echo "</body>" ;
echo"</html>";
}
?>
include'lbf_settings.php';
Lì dentro fai qualche output ?
Ricordati che anche una sola riga al di fuori di <?php ... ?> è un output...
Anche un riga vuota all'inizio del file...
LordBerisha
18-03-2003, 14:08
Grande cionci! :D
C'era una riga bianca all'inizio di lbf_settings.php, ora funziona.
Hai appena reso possibile il proseguimento dei lavori del mio forum!
Grazie :D
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.