【发布时间】:2014-02-17 09:08:17
【问题描述】:
我正在开发一个学生注册系统,其中学生使用分配给他们的用户名和密码登录(登录机制工作正常),登录后登录页面显示学生姓名、用户 ID 和部门(使用 mysql 的回显功能)然后他被要求选择要注册的课程,提交后我需要根据 user_id 更新 mysql 上的课程(如上一页所示)所选课程在 mysql 上得到更新,但前提是我定义了user_id 例如:
mysql_select_db('school',$conn);
$fresh = $_REQUEST["fresh"];
$user_id= $_REQUEST["user_id"];
$sql = "UPDATE `rasmp_accounts`
SET `fresh`='$fresh' WHERE `user_id`='001' ";
但当我将 WHERE 条件定义为时不起作用:
mysql_select_db('school',$conn);
$fresh = $_REQUEST["fresh"];
$user_id= $_REQUEST["user_id"];
$sql = "UPDATE `rasmp_accounts`
SET `fresh`='$fresh' WHERE `user_id`='$user_id' ";
原因可能是user_id(在上一页显示)不是表单字段而是回显函数,因此$user_id= $_REQUEST["user_id"];可能无法从上一页获取user_id。有什么方法可以从上一页获取 user_id 并将其链接到提交页面,这样它只会更新匹配 user_id 的课程?
非常感谢您的帮助:(
【问题讨论】:
-
如何从一页移动到下一页?您需要存储所有数据并再次在第二页上检索它,或者再次传递相同的变量(即通过隐藏输入)
-
您可以在您的
form中使用hidden field并将您的user_id放入其中 -
您能否显示您的表单页面和
echo $sql;并检查收到了哪些$user_id值? -
你不应该检查它是否为空吗?
-
如果
$user_id是' OR 1 = 1会怎样