-5
其实我已经试过在phpMyAdmin此查询,这是罚款:错误的SQL语法PHP
UPDATE guest_information
SET GuestFirstname='$firstname' , GuestLastName='$lastname', GuestMiddleName='$middlename',
Birthdate=$birthdate, Gender='$gender', PhoneNumber='$phone', MobileNumber='$mobile', Address='$address', EmailAddress='$email'
WHERE ReservationCode=$code"
但是当我把它作为我的PHP查询它产生这样的错误:
Warning: mysqli_fetch_array() expects parameter 1 to be mysqli_result, boolean given in \PATH_FILE\TO\MY\PHPFILE.PHP on line 1048 Error: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'WHERE ReservationCode=3876980' at line 4
我输出所有使用过的变量,它们都有值,这里有什么问题?非常感谢你。
您错过了'$ birthdate'周围的引号......并且您应该使用带有绑定参数的预准备语句来防止SQL注入。 – Mike
@Mike我已经在$ birthdate附近添加了引号,但它仍然会产生相同的错误 – rinkushitaka
@rinkushitaka这就是为什么您不直接将用户输入放入查询中的原因。 – Mike