使用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时,它都不起作用。有人能帮忙解决这个问题吗?