RagingBull
07-04-2007, 14:40
premesso che è la prima volta ke lavoro con i cookie, sto cercando di creare un area privata per un sito.
fin ora o creato, per testare, questi file:
login.html per l'inserimento di username e password
<form method="post" action="login.php">
Username<br>
<input type="text" name="username"><br>
Password<br>
<input type="password" name="password"><br><br>
<input type="submit" value="Login">
</form>
login.php verifica della correttezza dei dati inseriti e scrive il cookie
<html>
<body>
<?PHP
$user = "admin";
$pass = "pass";
$username = $_POST["username"];
$password = $_POST["password"];
if ($username == $user && $password == $pass)
{
setcookie("login", "OK", time() + 600);
print "Benvenuto! Entra nell'area privata, clicca <a href='privata.php'>qui</a>";
}
else
{
print "Accesso negato!";
}
?>
</body>
</html>
privata.php pagina privata di prova
<html>
<body>
<?PHP
if ($_COOKIE["login"] == "OK")
{
?>
<p>Contenuto dell'area privata...</p>
<p><a href="logout.php">Logout</a></p>
<?PHP
}
else
{
?>
<p>Accesso negato!</p>
<?PHP
}
?>
</body>
</html>
logout.php invalida il cookie
<html>
<body>
<?PHP
setcookie("login");
print "Arrivederci!";
?>
</body>
</html>
sul mio server di testing mi da questo errore:
Warning: Cannot modify header information - headers already sent by (output started at D:\Server\test\cookie\login.php:4) in D:\Server\test\cookie\login.php on line 13
su aruba invece l'errore nn esce ma cmq il cookie nn me lo crea. come è possibile???
fin ora o creato, per testare, questi file:
login.html per l'inserimento di username e password
<form method="post" action="login.php">
Username<br>
<input type="text" name="username"><br>
Password<br>
<input type="password" name="password"><br><br>
<input type="submit" value="Login">
</form>
login.php verifica della correttezza dei dati inseriti e scrive il cookie
<html>
<body>
<?PHP
$user = "admin";
$pass = "pass";
$username = $_POST["username"];
$password = $_POST["password"];
if ($username == $user && $password == $pass)
{
setcookie("login", "OK", time() + 600);
print "Benvenuto! Entra nell'area privata, clicca <a href='privata.php'>qui</a>";
}
else
{
print "Accesso negato!";
}
?>
</body>
</html>
privata.php pagina privata di prova
<html>
<body>
<?PHP
if ($_COOKIE["login"] == "OK")
{
?>
<p>Contenuto dell'area privata...</p>
<p><a href="logout.php">Logout</a></p>
<?PHP
}
else
{
?>
<p>Accesso negato!</p>
<?PHP
}
?>
</body>
</html>
logout.php invalida il cookie
<html>
<body>
<?PHP
setcookie("login");
print "Arrivederci!";
?>
</body>
</html>
sul mio server di testing mi da questo errore:
Warning: Cannot modify header information - headers already sent by (output started at D:\Server\test\cookie\login.php:4) in D:\Server\test\cookie\login.php on line 13
su aruba invece l'errore nn esce ma cmq il cookie nn me lo crea. come è possibile???