使用php更新mysqli数据

使用php更新mysqli数据,php,mysqli,Php,Mysqli,我有一个表单,它从我的数据库中检索各种值,并将其显示在表单中。表单包含文本框、收音机、下拉菜单。检索部件工作正常,每个字段都显示正确的值。但是,当我想要更改字段并更新数据时,它不会更新。请帮我拿一下好吗。这是我的密码: if(isset($_POST['submit'])){ $sql = "UPDATE tbl_dealer_info "; $sql .= "SET phone = '$phone', email = '$email', sfid = '$sfid', ...

我有一个表单,它从我的数据库中检索各种值,并将其显示在表单中。表单包含文本框、收音机、下拉菜单。检索部件工作正常,每个字段都显示正确的值。但是,当我想要更改字段并更新数据时,它不会更新。请帮我拿一下好吗。这是我的密码:

if(isset($_POST['submit'])){
    $sql = "UPDATE tbl_dealer_info ";
    $sql .= "SET phone = '$phone', email = '$email', sfid = '$sfid', ... WHERE id = '$idhidden' ";
    $result = mysqli_query($conn, $sql);
    if(!$result){
        die('Could not update data: '. mysqli_error());
    }
    else{
        echo "Updated Successfully";
    }
}
<input type = "hidden" name = "idhidden" id = "idhidden" value = "" /> // My hidden input to store the id
if(isset($\u POST['submit'])){
$sql=“更新tbl\u经销商信息”;
$sql.=“设置电话='$phone',电子邮件='$email',sfid='$sfid',…其中id='$idhidden';
$result=mysqli\u查询($conn,$sql);
如果(!$result){
die('无法更新数据:'.mysqli_error());
}
否则{
echo“更新成功”;
}
}
//我的隐藏输入用于存储id

它显示“已成功更新”,但实际上没有更新。

您缺少where条件和
;'

$sql = "UPDATE tbl_dealer_info ";
$sql .= "SET phone = '$phone', email = '$email', sfid = '$sfid' WHERE #here where condition #here ";
试试这个

if(isset($_POST['submit'])){
    $sql = "UPDATE tbl_dealer_info SET phone = '".$phone."', email = '".$email."', sfid = '".$sfid."', ... WHERE id = ".$idhidden; 
     $result = mysqli_query($conn, $sql);
     if(!$result){ 
        die('Could not update data: '.  mysqli_error()); 
     } else{ 
        echo "Updated Successfully";
    } 
 }

参数化您的查询。是否有
where
子句?即使运行更新,也不意味着任何行都受到影响。什么是
mysqli\u受影响的行($conn)
?我忘了包含where子句,但我有它。我已经更新了上面的查询。尽管mysqli\u受影响的行($conn)为0,但仍然没有什么!说。与您一起学习。我建议使用
PDO
,我希望它比使用非参数化查询更加简单、干净、安全。另外,可能会帮助您在
MySQLi
PDO
之间进行选择,更新上面的我的查询以包含WHERE子句,但它仍然不会更新语法更新表\u name SET column1=value1,column2=value2。。。何处条件;所以我需要在那一行有两个分号?需要另一个eg吗?在php中,“…”是我所有列的值。但是我试着用了2个分号,但仍然没有任何结果。只有在我的where子句中,我使用了帐户名而不是id,更新才有效。每当我输入id时,它都不起作用。有人能帮忙解决这个问题吗?