在这行代码中遇到一些问题:
$usersql= mysql_query("INSERT INTO tp_request (user_id, week_no, floor, code) VALUES ($insertuser, $week, $floor, $code)");
变量值如下:
$insertuser = 1;
$week = 4;
$floor = "First";
$code = "ABC123";
同时使用而其他两个变量时,$ insertuser和$ week都会毫无问题地进入数据库。但是,当使用$ floor和$ code时,不会将任何内容输入数据库。它们分别正确地回应为“第一”和“ABC123”。
数据库中的字段已作为Text和VarChar进行了尝试,并且它不能与这两个中的任何一个一起使用。
关于如何获得$ floor和$ code在这里工作的任何想法?
答案 0 :(得分:1)
尝试此操作,添加'
以包围变量$floor
和$code
,因为它包含字符串,
$usersql= mysql_query("INSERT INTO tp_request (user_id, week_no, floor, code)
VALUES ($insertuser, $week, '$floor', '$code')");
注意:使用mysqli_ *函数或PDO而不是使用mysql_ *函数(不建议使用)
答案 1 :(得分:1)
重写
$usersql= mysql_query("INSERT INTO `tp_request` (`user_id`, `week_no`, `floor`, `code`) VALUES ('$insertuser', '$week', '$floor', $code)");
旁注:您不得不停止使用mysql_ *函数,因为它们已被弃用。切换到PreparedStatements。
答案 2 :(得分:0)
$usersql= mysql_query("INSERT INTO tp_request (user_id, week_no, floor, code) VALUES ($insertuser, $week, '$floor', '$code')");
答案 3 :(得分:0)
在字符串变量周围为sql子句添加单引号。