Php MySQL语法错误:near';1';在1号线

Php MySQL语法错误:near';1';在1号线,php,mysql,mysqli,Php,Mysql,Mysqli,我在第1行得到了错误“1”,我有点被这个错误难住了;我是一个彻头彻尾的笨蛋,通常不寻求帮助就试图纠正事情 它将所有数据正确地输入到数据库中,但提供了此错误 有两个其他线程具有相同的问题,其中一个问题的解决方案是: 这就是出现错误的原因:您试图使用上次更新查询的结果调用mysql_查询。如果为TRUE,则转换为字符串,仅为“1” (我知道我真的应该准备一份声明) 当插入成功时,下一行将值“1”存储在$sql中,当插入失败时,将值“0”存储在$sql中 $sql = mysqli_query($co

我在第1行得到了错误“1”,我有点被这个错误难住了;我是一个彻头彻尾的笨蛋,通常不寻求帮助就试图纠正事情

它将所有数据正确地输入到数据库中,但提供了此错误

有两个其他线程具有相同的问题,其中一个问题的解决方案是: 这就是出现错误的原因:您试图使用上次更新查询的结果调用mysql_查询。如果为TRUE,则转换为字符串,仅为“1”

(我知道我真的应该准备一份声明)


当插入成功时,下一行将值“1”存储在$sql中,当插入失败时,将值“0”存储在$sql中

$sql = mysqli_query($con, "UPDATE users SET title='$title', firstname='$firstname', lastname='$lastname', jobtitle='$jobtitle', address='$address', address2='$address2', address3='$address3', postcode='$postcode', telephone='$telephone', email='$email' WHERE username='$user'");
而你正试图执行这个

if (!mysqli_query($con,$sql)) 
在这里,$sql的值是“1”,这不是一个有效的查询。这会导致语法错误。 如果您正试图实现此目标,则可能:

$sql = "UPDATE users SET title='$title', firstname='$firstname', lastname='$lastname', jobtitle='$jobtitle', address='$address', address2='$address2', address3='$address3', postcode='$postcode', telephone='$telephone', email='$email' WHERE username='$user'";
if(mysqli_query($con,$sql)){
    //do something if the operation is successful
}

执行查询并将结果放入$sql中,然后执行该结果,不要将对
mysqli_*()
的调用与对
mysql_*()
的调用混合在一起-两者不兼容<代码>更新不返回结果集。最后,您使用的是$qStuff,但它并没有在任何地方初始化。记住适当地转义输入数据是很好的,但更好、更干净的解决方案是使用准备好的语句。唉,我对MySQLi还不太熟悉,不知道该怎么做,但这应该足以帮助您进行搜索。您只能为获取结果(如“选择”)的MySQLi操作检索值。
if (!mysqli_query($con,$sql)) 
$sql = "UPDATE users SET title='$title', firstname='$firstname', lastname='$lastname', jobtitle='$jobtitle', address='$address', address2='$address2', address3='$address3', postcode='$postcode', telephone='$telephone', email='$email' WHERE username='$user'";
if(mysqli_query($con,$sql)){
    //do something if the operation is successful
}