致命错误:调用未定义的函数mysql_connect()

时间:2012-10-08 14:17:16

标签: php

我收到此错误致命错误:在第8行的/var/www/html/test1.php中调用未定义的函数mysql_connect() 对于以下代码:

<?php
$host = "localhost";
$user = "user12";
$pass = "34klq*";
ini_set ('display_errors', 1);
$r = mysql_connect($host, $user, $pass);
if (!$r) {
echo "Could not connect to server\n";
trigger_error(mysql_error(), E_USER_ERROR);
} else {
echo "Connection established\n";
}
echo mysql_get_server_info() . "\n";
mysql_close();
?>

我的系统中安装了PHP,MYSQL,php-Mysql:

[root@localhost ~]# rpm -qa | grep mysql
php-mysql-5.3.3-3.el6_2.8.i686
mysql-devel-5.1.61-4.el6.i686
mysql-server-5.1.61-4.el6.i686
mysql-bench-5.1.61-4.el6.i686
mysql-libs-5.1.61-4.el6.i686
mysql-5.1.61-4.el6.i686

[root@localhost ~]# rpm -qa | grep php 
php-common-5.3.3-3.el6_2.8.i686
php-5.3.3-3.el6_2.8.i686
php-mysql-5.3.3-3.el6_2.8.i686
php-cli-5.3.3-3.el6_2.8.i686
php-pdo-5.3.3-3.el6_2.8.i686

phpinfo()的输出: http://jsfiddle.net/nit8899/GZ4f7/

我也编辑了/etc/php.ini文件:

extension=mysql.so

但即便如此,我也遇到了这个错误。

5 个答案:

答案 0 :(得分:2)

您应该打开位于php文件夹中的php.ini文件,并取消注释这行代码:

;extension=php_mysql.dll

所以它看起来像这样:

extension=php_mysql.dll

你的php文件夹位置取决于你的lampp / wampp安装,如果使用xampp位于:xampp / php / php.ini

答案 1 :(得分:1)

如果您正在使用linux [debian]

apt-get install php5-mysql

因为您的PHP无法与mysql交谈

答案 2 :(得分:0)

我作弊并看了我的手机

PHP的构建有点说'--with-mysql'

因此,mysql函数将不可用。

你应该重建。

答案 3 :(得分:0)

您的PHP配置了--without-mysql

documentation描述了如何配置启用了mysql扩展。您可能有理由,但PDO是更好的选择,documentation用于配置PDO mysql。

答案 4 :(得分:0)

我的解决方案在这里(代码可能对引号和斜杠敏感):Fatal error: Call to undefined function mysql_connect() cannot solve