mysql_connect()错误消息

时间:2012-11-14 13:18:20

标签: php mysql apache

我安装了Apache2.2然后安装了PHP5.4.8。我无法在浏览器中加载新的.php文件,因为它一直给我错误Fatal error: Call to undefined function mysql_connect()。当我加载仅包含此文件的test.php文件时: <?php phpinfo(); ?>它返回一个页面,显示有关PHP的信息,但它显示MySQL模块的位置只显示mysqlnd。那是什么?此外,我已经浏览了php.ini文件并取消注释了MySQL集成的正确行以及编辑了Apache2.2 httpd文件。有没有人有任何答案,为什么MySQL不工作?提前谢谢。

此外,我尝试过本网站的许多解决方案以及许多谷歌搜索。我似乎无法弄明白。 : - (

2 个答案:

答案 0 :(得分:4)

1)看看choosing MySQL API。建议使用mysqli扩展名。

2)根据Other changes to extensions,MySQL扩展程序mysqlmysqliPDO_mysql现在使用mysqlnd作为默认库。
来自MySQL Native Driver - mysqlnd网站的引用:

  

虽然MySQL Native Driver是作为PHP扩展编写的,但重要的是要注意它没有为PHP程序员提供新的API。 用于MySQL数据库连接的程序员API由MySQL扩展,mysqli和PDO MYSQL 提供。这些扩展现在可以使用MySQL Native Driver的服务与MySQL Server进行通信。因此,您不应将MySQL本机驱动程序视为API

这意味着,mysqlnd扩展程序不会导出您可以在脚本中使用的任何功能,而是充当您的代码与mysqlmysqli之一{{}之间的桥梁。 1}}扩展。

你提到过,pdo_mysql只显示了mysqlnd。您没有看到标题为phpinfo()的部分,这意味着在MySQL(Windows)中未启用{注释掉} mysql扩展名,或者您的php未使用mysql支持编译(Linux) )。有关安装MySQL扩展的更多详细信息是here

答案 1 :(得分:0)

您的操作系统是什么?

要成功建立MySQL连接,您应该:

  • 安装MySQL服务器
  • 配置PHP以使用正确的mysql套接字:(在php.ini中搜索mysql.default_socket - 将其指向mysql服务器)。
  • 重新启动Web服务器 - Apache