我正在嘗試創建一個簡單的登錄表單。我有session_start();作爲頁面上加載的第一件東西。我有一個文件login.php,其中包含登錄相關代碼,當單擊登錄按鈕時,該代碼通過ajax調用進行處理。它包含:註冊PHP會話變量
if ($_GET['cemail']) {
$email = $_GET['cemail'];
$password = md5($_GET['cpassword']);
$sql = "select * from users where email='" . $email . "' and password='" . $password . "'";
$result = mysql_query($sql);
if (mysql_num_rows($result) >= 1) {
session_register("email");
}
else {
echo "<span style='color:#ffffff;'>Invalid Email/Password</span><br>";
}
}
當我點擊登錄按鈕,我得到這樣的警告: 警告:了session_register()[function.session註冊]:無法發送會話緩存限制器 - 已經發送了頭(輸出開始/ home/clicker/public_html/hstrial-RBochner/login.php:1)在線82上的/home/clicker/public_html/hstrial-RBochner/login.php
第82行是說session_register(「email」 );
我還試圖建立一個註銷按鈕,只是調用session_destroy(),但它給了我這樣的:
警告:session_destroy()[function.session滅]:試圖在/ home銷燬未初始化會話/clicker/public_html/hstrial-RBochner/login.php on line 66
我在這裏做錯了什麼?我試過在不同的地方放置session_start()。任何幫助/想法?謝謝。
可能重複[無法修改標題信息 - 標題已發送,爲什麼發生](http://stackoverflow.com/questions/1827314/cannot-modify-header-information-headers-already-sent-why-its -happening) – meagar
'session_register'已被棄用,並計劃從語言中刪除。你根本不應該使用它。如果你在某個教程中發現它可能是十年前的。 –
這可能是最常見的PHP問題。答案清楚地記錄在任何地方*。在提出新問題之前,請習慣於使用Google搜索錯誤消息並搜索現有問題/答案。 ['session_start']手冊(http://php.net/manual/en/function.session-start.php)包含數十個答案。 – meagar