這是我在logout.php代碼Cookie不能正常工作的
<?php
if(isset($_COOKIE['cookie-username']) || isset($_COOKIE['cookie-password'])) {
setcookie("cookie-username", NULL, time()-60*60*24*100);
setcookie("cookie-password", NULL, time()-60*60*24*100);
}
header('Location: ../login') ;
?>
我可以證實餅乾存在,如果我做一個while循環,我得到
致命錯誤:允許內存大小的134217728字節耗盡(試圖分配79個字節)/home/ios/public_html/logout.php線
這意味着它不能刪除第e cookies ... 我已經做了大量的谷歌搜索,但我不明白爲什麼它不會刪除所述cookie ...
幫助? 由於事先
編輯: 證明餅乾: http://cl.ly/1c31120de4b722518b05
創建的cookie:
if (isset($_POST['submit'])) {
try {
if (!isset($_POST['username']) || !isset($_POST['password']) || trim($_POST['username']) =='' || trim($_POST['password']) =='') { throw new Exception('All Fields Are Required!');
}
$username = strtolower($_POST['username']);
$password = md5(strtolower($_POST['password']));
include('classes/config.php');
[SQL REMOVED]
foreach ($pdo->query($sql) as $row) {
$dbPassword = $row['password'];
}
if (!isset($dbPassword)) {
throw new Exception('Invalid Username or Password!');
}
if ($dbPassword == $password) {
if (!isset($_COOKIE['cookie-username']) || !isset($_COOKIE['cookie-password'])){
$days = 1;
if (strtolower($_POST['remember']) == 'on') {
$days = 30;
}
setcookie("cookie-username", $username, time()+60*60*24*$days, "/");
setcookie("cookie-password", $password, time()+60*60*24*$days, "/");
}
echo '<META HTTP-EQUIV="Refresh" Content="0; URL=../index">';
}
else if ($dbPassword != $password) {
throw new Exception('Invalid Username or Password!');
}
}
catch (Exception $e) {
$exception = $e->getMessage();
}
}
好吧,它永遠不會退出while循環,所以cookies永遠不會被刪除。所以我99.99999999999999999%肯定它在那裏。 – willium 2010-10-31 10:45:13
..這就是致命錯誤的原因。見@ meze的回答 – 2010-10-31 10:48:16