Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/rust/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
连接到mysql的php代码中存在致命错误_Php - Fatal编程技术网

连接到mysql的php代码中存在致命错误

连接到mysql的php代码中存在致命错误,php,Php,下面的代码给了我一个致命错误:调用未定义的函数mysql\u connect。 我的php版本是5.4.20。php.ini文件扩展名为php_mysql.dll,并且php_mysql.dll文件实际存在。 我需要做什么 <?php $connection=mysql_connect('localhost','php','foo')or die('no connection made'); ?> 我只想说,这样的连接是不可取的。请像这样连接,如果您的mysql正常工作,您

下面的代码给了我一个致命错误:调用未定义的函数mysql\u connect。 我的php版本是5.4.20。php.ini文件扩展名为php_mysql.dll,并且php_mysql.dll文件实际存在。 我需要做什么

<?php
    $connection=mysql_connect('localhost','php','foo')or die('no connection made');
?>

我只想说,这样的连接是不可取的。请像这样连接,如果您的mysql正常工作,您应该没有错误:

function db()
{
   try
   {
      $db = new PDO('mysql:host=localhost; dbname=test; charset=utf8', 'username', 'password', array(PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES 'utf8'"));
   }

   catch (Exception $e)
   {
       die('Error : ' . $e->getMessage());
   }
   return $db;
}

对于您面临的Fatel错误:-

请从
phpinfo()
验证mysql是否正确运行。如果您在Php.ini中做了任何更改,那么应该重新启动apache服务器

建议:-

请避免使用
mysql.*
函数。您可以使用
mysqli

如何在Mysqli中编写数据库连接:

<?php
$mysqli = new mysqli('localhost', 'my_user', 'my_password', 'my_db');

/*
 * This is the "official" OO way to do it,
 * BUT $connect_error was broken until PHP 5.2.9 and 5.3.0.
 */
if ($mysqli->connect_error) {
    die('Connect Error (' . $mysqli->connect_errno . ') '
        . $mysqli->connect_error);
}

/*
 * Use this instead of $connect_error if you need to ensure
 * compatibility with PHP versions prior to 5.2.9 and 5.3.0.
 */
if (mysqli_connect_error()) {
    die('Connect Error (' . mysqli_connect_errno() . ') '
        . mysqli_connect_error());
}

echo 'Success... ' . $mysqli->host_info . "\n";

$mysqli->close();
?>

您也可以参考以下链接:-


取消对php.ini文件中的
extension=php\u mysql.dll
行的注释,然后重新启动Apache

此外,libmysql.dll文件必须对Apache可用,即它必须位于Windows系统路径中或Apache工作目录中

请参阅手册中有关安装MySQL扩展的更多信息

P.S.S.我建议把MySQL扩展看作是不赞成的,使用MySQL或甚至PDO来处理数据库(我更喜欢PDO)。