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

问题描述 投票:1回答:2

我为我的学习课下载了下载XAMPP。完成安装后,我可以正常使用它。但是当我尝试连接到MySQL时,我会继续返回此错误。

<?php

define("DB_HOST","localhost");
define("DB_USER","root");
define("DB_PWD","");
define("DB_DBNAME","text");
define("DB_CHARSET","utf8");

?>
function connect(){
    $link=mysql_connect("DB_HOST","DB_USER","DB_PWD") or die("连接失败Error:".mysql_error().":".mysql_error());
    mysql_select_db(DB_DBNAME);
    return $link;
}
mysql xampp
2个回答
5
投票

首先,请确保MySQL服务正在运行。

  • 打开XAMPP控制面板
  • 单击MySQL模块对应的Start按钮。

然后,尝试检查是否正在加载PHP MySQL扩展模块:

<?php
    phpinfo();
?>

运行上面的代码/页面并搜索mysql。如果它不存在,请将以下内容添加到php.ini文件中:

extension=php_mysql.dll

更新:在PHP 7中删除了mysql_ *函数。您可能在XAMPP中有一个php7。请使用PDO或mysqli_connect("DB_HOST","DB_USER","DB_PWD")而不是mysql_connect().


1
投票

首先看看你的代码;你有这个部分:

    function connect(){
        $link=mysql_connect("DB_HOST","DB_USER","DB_PWD") or die("连接失败Error:".mysql_error().":".mysql_error());
        mysql_select_db(DB_DBNAME);
        return $link;
    }

关闭php标签后(“?>”);意思是关闭php标签之后的内容不是你的PHP代码的一部分。因此,请尝试在代码末尾插入结束的php标记。像这样的东西:

<?php

define("DB_HOST","localhost");
define("DB_USER","root");
define("DB_PWD","");
define("DB_DBNAME","text");
define("DB_CHARSET","utf8");

function connect(){
    $link=mysql_connect("DB_HOST","DB_USER","DB_PWD") or die("连接失败Error:".mysql_error().":".mysql_error());
    mysql_select_db(DB_DBNAME);
    return $link;
}
?>

至于你的代码;我只想把它重写为:

    <?php
    $DB_HOST = "localhost"; 
    $DB_DBNAME = "text"; 
    $DB_USER = "root"; 
    $DB_PWD = ""; 

    $db_link = mysql_connect($DB_HOST, $DB_USER, $DB_PWD) or die('连接失败Error:'.mysql_error());  
    mysql_select_db($DB_DBNAME, $db_link) or die('连接失败Error:'.mysql_error());
    ?>

然后尝试连接到MySQL数据库。

© www.soinside.com 2019 - 2024. All rights reserved.