作者: sunhikari 時間: 2012-2-13 14:40 標題: 是程式問題,還是server 設定問題?
下面係我寫的有關check pasword的程式
- <?php
- //取得表單資料
- $account = $_POST["account"];
- $password = $_POST["password"];
- //建立資料連接
- $link = mysql_connect("localhost", "root", "multiple");
- if (!$link) die("建立資料連接失敗");
-
- //開啟資料表
- $db_selected = mysql_select_db("multiple", $link);
- if (!$db_selected) die("開啟資料庫失敗");
-
- //檢查帳號密碼是否正確
- $sql = "SELECT * FROM account Where account ='$account' AND password ='$password'";
- $result = mysql_query($sql, $link);
- if (!$result) die("執行 SQL 命令失敗");
- //如果帳號密碼錯誤
- if (mysql_num_rows($result) == 0)
- {
- //釋放 $result 佔用的記憶體
- mysql_free_result($result);
-
- //關閉資料連接
- mysql_close($link);
-
- //顯示訊息要求使用者輸入正確的帳號密碼
- echo "<SCRIPT LANGUAGE='javascript'>";
- echo "alert('username or password not correct.Please check it and login again.');";
- echo "history.back();";
- echo "</SCRIPT>";
- }
-
- //如果帳號密碼正確
- else
- {
-
- //取得 id 欄位
- $id = mysql_result($result, 0, "id");
- $limit= mysql_result($result, 0, "limit");
-
- //釋放 $result 佔用的記憶體
- mysql_free_result($result);
-
- //關閉資料連接
- mysql_close($link);
- //將使用者資料加入 cookies
- setcookie("id", $id);
- setcookie("limit", $limit);
- setcookie("passed", "TRUE");
- header("location:my_work_place.php");
- }
-
- ?>
但一但check到係啱,做寫野個陣,就會出error http 500
唔知係我段程式寫得有問題定係server出問題.......
求指教
小弟用的是apache2.2+php5.3+mysql5.5
謝
作者: garrodran99 時間: 2012-2-13 15:15
點解唔用 MVC, ORM
作者: 神秘二代 時間: 2012-2-13 19:48
本帖最後由 神秘二代 於 2012-2-13 19:49 編輯
下面係我寫的有關check pasword的程式其實去到check password啱定錯個陣係無問題
但一但check到係啱,做寫野 ...
sunhikari 發表於 2012-2-13 14:40
因為你close左個連線/free左memory...資料已不存在
縱使你用$id = mysql_result($result, 0, "id");
其實個$id只係reference左RAM既address,並無真正取得值
所以要close連線/free memory應該是完成所有關於database的動作時釋放~

