我爲學校的課程構建了一個小腳本,它將更新數據庫中的用戶詳細信息。
我的更新腳本有效,但是我想實現的是在php中使用會話變量選擇數據。
該生產線的問題是:
$query = mysql_query ("SELECT * from customer where username = 'ryan'");
我寧願它讀取類似:
$query = mysql_query ("SELECT * from customer where username = $_SESSION['myusername']");
但是,這是行不通的。會話從我的登錄表單傳遞,可以在頁面上顯示用戶名,但在我的select語句中不起作用。
這裏是我的代碼:
<?php
session_start();
$con = mysql_connect("localhost","root","root");
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
mysql_select_db("ryandb", $con);
echo "welcome ". $_SESSION['myusername'] . " to the members only page</br>";
$query = mysql_query ("SELECT * from customer where username = 'ryan'");
while ($row = mysql_fetch_array ($query))
{
$username = $row['username'];
$firstname = $row['firstname'];
$surname = $row['surname'];
$email = $row['email'];
}
?>
<form method="post" action="updateuser.php">
Username: <input type="text" name="username" value="<?php echo $_SESSION['myusername']; ? >" /><br />
Firstname: <input type="text" name="firstname" value="<?php echo $firstname; ?>"/><br />
Surname: <input type="text" name="surname" value="<?php echo $surname; ?>"/><br />
Email: <input type="text" name="email" value="<?php echo $email; ?>"/><br />
<input type= "submit" name = "update" value="Update">
</form>
**對於'mysql_ *'函數不再支持**,它們是[**官方不推薦使用的**](https://wiki.php.net/rfc/mysql_deprecation),**不再維護**,將來會[**刪除**](http://php.net/manual/en/function.mysql-connect.php#warning)。您應該使用[PDO](http://php.net/pdo)或[MySQLi](http://php.net/msqli)更新您的代碼,以確保您的項目未來的功能。 – Arjan 2013-05-07 05:58:20