php - 我一直在 PHP 代码中得到 "Error Querying Database"

标签 php mysql mysqli

看来我可以正常连接到服务器。问题似乎在运行查询时发生。一直在说

Error Querying Database

这是我的代码:

 <?php
 $dbc = mysqli_connect('localhost', 'elvis_store')
      or die('Error connecting to MySQL server.');

 $first_name = $_POST['firstname'];
 $last_name = $_POST['lastname'];
 $email = $_POST['email'];

 $query = "INSERT INTO email_list (first_name, last_name, email)" .
      "VALUES ('$first_name', '$last_name', '$email')";
 mysqli_query($dbc, $query)
      or die('Error querying database.');

 echo 'Customer added.';

 mysqli_close($dbc);
 ?>

最佳答案

您收到此错误是因为在您的 MySQLi 连接中您只提供了位置和用户名。您不提供要使用的数据库名称。如果你没有密码,你需要这样写你的连接:

$dbc = mysqli_connect('localhost', 'elvis_store', NULL, 'dbName)

$dbc = mysqli_connect('localhost', 'dbUsername', NULL, 'elvis_store')

如果“elvis_store”是数据库名称而不是用户名。请记住,mysqli 连接是:mysqli_connect(dbLocation, dbUsername, dbPassword, dbName)

此外,正如 Ed 在另一个答案中指出的那样,您的 MySQL 语句中也存在语法错误。以下是 Ed 回答的摘录:

$query = "INSERT INTO email_list (first_name, last_name, email) " . "VALUES ('$first_name', '$last_name', '$email')";

关于php - 我一直在 PHP 代码中得到 "Error Querying Database",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35237371/

相关文章:

php - 多个回显仅使用 1 个 SELECT *

php - 刷新后从选择菜单中获取最后一个值

php - 使用 Codeigniter 更新 MySql 中的数据不起作用

php - 对不存在的行使用 Fetch

php - WHERE 语句 SQL 不起作用

php - 在您的网站上显示 SQL 错误消息是否安全? (mysqli)

php - 使用 PHP 在两个页面之间传递变量的最安全方式

php - FPDF 中的汉字问题

mysql - MATCH (...) AGAINST (... IN BOOLEAN MODE) 之后 LEFT JOIN 不起作用

mysql - 如何优化此查询以防止超时