这是我的第一个 UPDATE 查询,我已经使用 jQuery 检查了是否有任何空字段。我希望用户至少输入一个字段,然后更新该字段。使用所有 $_POST 名称进行查询可能会在我的数据库中生成空或未定义的输入字段,这不起作用..这是我的查询:
$first = $_POST['first'];
$last = $_POST['last'];
$birth = $_POST['birth'];
$bio = $_POST['bio'];
$UID = $_SESSION['id'];
$query = "UPDATE `user` SET `firstname`=$first,`lastname`=$last,`birthday`=$birth,`biography`=$bio WHERE `user_id` = '$UID'";
$result = mysql_query($query) or die($result . "<br/><br/>" . mysql_error());
错误:
在第 1 行的 'birthday
=,biography
= WHERE user_id
= '11'' 附近使用的语法
我不想通过嵌套的 if 来检查是否有值。谢谢。
最佳答案
注意:使用mysql_real_escape_string()来防止sql注入(inject)。
if( !empty($first) &&
!empty($last) &&
!empty($birth) &&
!empty($bio) ){
$query = "UPDATE `user`
SET
`firstname`='$first',
`lastname`='$last',
`birthday`='$birth',
`biography`='$bio'
WHERE `user_id` = '$UID'";
}
关于php - MySQL UPDATE 查询 - 处理空输入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20782276/