我为学校的课程构建了一个小脚本,它将更新数据库中的用户详细信息。
我的更新脚本有效,但是我想实现的是在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