【问题标题】:Mysql and mysqli connection in XAMPPXAMPP中的Mysql和mysqli连接
【发布时间】:2018-02-23 08:02:14
【问题描述】:

我尝试在 XAMPP 上安装一个脚本,但出现此错误:

致命错误:未捕获错误:调用 D:\xampp\htdocs\extend\install\step_1.php:44 中的未定义函数 mysql_select_db()

堆栈跟踪:#0 {main} 在第 44 行的 D:\xampp\htdocs\extend\install\step_1.php 中抛出

我的第 44 行是

    if (@mysql_connect($_POST['hostname'], $_POST['username'], 
    $_POST['password']) && mysql_select_db($_POST['dbname']))

我怀疑脚本连接是 MySQL 有什么帮助可以解决这个问题吗?

【问题讨论】:

  • 如果您正在运行 PHP7 或更高版本,则不再有 mysql 数据库扩展。它已被删除
  • 使用$_POST 数组中的值作为数据库连接的参数是非常危险的。 也许你不应该安装这个脚本!!!!
  • 此外,您看到的任何使用@ 错误消音器的脚本都应从一开始就被视为SUSPECT
  • 这能回答你的问题吗? Undefined function mysql_connect()

标签: php mysql mysqli


【解决方案1】:

这会有所帮助

 if (@mysqli_connect($_POST['hostname'], $_POST['username'], 
$_POST['password']) && mysqli_select_db($_POST['dbname']))

mysqli_*() 是通过 PHP 访问 MySQL 数据库的现代方式。

【讨论】:

  • OP 为什么要这样做好的答案将始终解释所做的事情以及这样做的原因,不仅适用于 OP,而且适用于可能会发现此问题并正在阅读您的答案的 SO 的未来访问者。跨度>
  • @RiggsFolly 好的,谢谢您的评论。我会记住这一点
  • 感谢@Abhislek。我通过并击中了这个。我有这个其他错误........警告:mysqli_query() 期望参数 1 为 mysqli,字符串在 D:\xampp\htdocs\extend\install\step_2.php 第 147 行给出..还有一些在线 149 .. 第 149 行是 mysql_select_db($session->get('dbname'), $connection);
  • 这意味着第一个参数必须是你的数据库的连接细节。如果您传递任何其他变量,则会显示此错误。看看 -> php.net/manual/en/mysqli.query.php ->php.net/mysqli_select_db
猜你喜欢
  • 2016-12-07
  • 2012-12-04
  • 2016-08-14
  • 1970-01-01
  • 1970-01-01
  • 2021-10-27
  • 1970-01-01
  • 2018-11-02
  • 2012-09-18
相关资源
最近更新 更多