这是我的第一个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());
错误:
语法在“birthday
=,biography
= WHERE user_id
='11''第1行附近使用
我不想通过嵌套if来检查是否有值。感谢。
答案 0 :(得分:1)
注意:使用mysql_real_escape_string()来防止sql注入。
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'";
}