php - 如何将下面这段代码中的mysql修改为mysqli?
黄舟
黄舟 2017-04-10 17:59:17
[PHP讨论组]

服务器升级到了PHP,但是使用的PHP代码中使用的是mysql_connet链接数据库,自己尝试着修改,但是还是妨碍吸纳问题。

function _makeConnection() 
    {
        $this->logBenchmark('_makeConnection() {');
        
        $connected = false;
        if (@mysql_connect($this->db['server'],$this->db['username'],$this->db['password']))
        {
            if (@mysql_select_db($this->db['database']))
            {
                $connected = true;
            }
            else
            {
                $this->logError('MySQL Error: '.mysql_error().'. ('.mysql_errno().')', 2);
            }
        }
        else
        {
            $this->logError('MySQL Error: '.mysql_error().'. ('.mysql_errno().')', 2);
        }
        if (!$connected)
        {
            $this->logErrorNote('

Mint was unable to connect to the database. Please make sure that the correct values have been added to /config/db.php.

'); } $this->logBenchmark('}'); return $connected; } function query($query) { $this->logBenchmark('query("'.substr($query, 0, 24).'...") {'); $this->queries[] = $query; if (!($result = mysqli_query($query))) { $this->logError('MySQL Error: '.mysqli_error().'. ('.mysqli_errno().')
Query: '.$query); $result = false; } $this->logBenchmark('}'); return $result; }

修改后的代码:

    function _makeConnection() 
    {
        $this->logBenchmark('_makeConnection() {');
        
        $connected = false;
        if (@mysqli_connect($this->db['server'],$this->db['username'],$this->db['password'],$this->db['database']))
        {
            $connected = true;
        }
        else
        {
            $this->logError('MySQL Error: '.mysqli_error().'. ('.mysqli_errno().')', 2);
        }
        if (!$connected)
        {
            $this->logErrorNote('

Mint was unable to connect to the database. Please make sure that the correct values have been added to /config/db.php.

'); } $this->logBenchmark('}'); return $connected; } function query($query) { $this->logBenchmark('query("'.substr($query, 0, 24).'...") {'); $this->queries[] = $query; if (!($result = mysqli_query($query))) { $this->logError('MySQL Error: '.mysqli_error().'. ('.mysqli_errno().')
Query: '.$query); $result = false; } $this->logBenchmark('}'); return $result; }

错误原因,mysqli_query需要传递2个参数,$link和$query,但是原始方法中并没有传入$link

黄舟
黄舟

人生最曼妙的风景,竟是内心的淡定与从容!

全部回复(1)
迷茫
$link = @mysqli_connect(...)
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号