【发布时间】:2017-04-26 05:28:35
【问题描述】:
我正在用 PHP 开发一个应用程序,到目前为止一切进展顺利。但是,使用 PHP 和 MySQLi 更新数据库表时出现错误。表格更新正常,但我收到“无法更新”消息。
这是我正在使用的代码:
<?php
if(isset($_POST['Submit'])){//if the submit button is clicked
$name = mysqli_real_escape_string($mysqli, $_POST['name']);
$lname = mysqli_real_escape_string($mysqli, $_POST['lname']);
$phone = mysqli_real_escape_string($mysqli, $_POST['phone']);
$email = mysqli_real_escape_string($mysqli, $_POST['email']);
$sql="UPDATE admin_users SET name='$name', lname='$lname', phone='$phone', email='$email'";
$mysqli->query($sql) or die("Cannot update");//update or error
}
任何人都可以看到可以使它做正确的事情的任何问题吗?
【问题讨论】:
-
你需要知道真正的错误是什么;你没有这样做
-
谢谢。你能告诉我怎么做吗?我试过 $mysqli->query($sql) 或 die 。 mysqli_error($mysqli);//更新或出错
-
发现错误:重复条目 'dan@cvia.org.au' for key 'email' - 但只有一个条目。
-
这是因为您没有
WHERE子句并且正在尝试更新您的整个数据库。 -
已修复。行电子邮件是一个唯一条目,因此它试图复制它而不是更新它。删除唯一键解决了它。 Fred,如果我尝试添加 WHERE 子句,它会出现未定义的变量。
标签: php mysqli sql-update