我一直在试图解决这个问题几个小时,我已经创建了一个数据库(MySql/PHPMyadmin),我正在尝试存储用户输入以便能够调用备份,但是信息没有制作/保存到数据库中,除了这部分代码之外,一切都显示正常:
$registered = mysqli_affected_rows ($dbc);
echo $registered. "Row is affected";
当 run 显示 -1 行时,我相信这是问题的一个重要部分,因为其他一切似乎都可以正常工作。我是一个完全的初学者,所以你们能告诉我调试它的最佳方法是什么。
$dbc = $dbc = mysqli_connect ($hostname, $username, $password, $dbname) OR die("Could not Connect");
要将数据输入数据库,我有以下内容:
if ($_SERVER['REQUEST_METHOD'] == 'POST'){
$comments = $_POST ['Comments'];
if (!empty ($comments)){
include ('mysqldb.php');
mysqli_query ($dbc,"INSERT INTO 'User-Comments' (Comments) VALUES ('$comments')");
$registered = mysqli_affected_rows ($dbc);
echo $registered. "Row is affected";
}else {
echo "Nothing Submitted";
}
}
行:
mysqli_query ($dbc,"INSERT INTO 'User-Comments' (Comments) VALUES ('$comments')");
应该是:
mysqli_query ($dbc,"INSERT INTO `User-Comments` (Comments) VALUES ('$comments')");
请注意表名周围的撇号字符 ( ' ) 的变化。
函数 mysqli_stmt_affected_rows()
: -1 的文档摘录表示查询返回了错误。
您应该检查 mysqli_query()
返回的值。如果它返回FALSE
则可以使用函数 mysqli_error()
获取有关原因(错误消息)的详细信息。