当前位置: 首页 > 知识库问答 >
问题:

致命错误:未捕获错误:调用未定义的函数mysql_pconnect()

燕正德
2023-03-14

我在Codeigniter中发现了这些错误。

Fatal error: Uncaught Error: Call to undefined function mysql_pconnect() in

C:\xampp1\htdocs\CI\system\database\drivers\mysql\mysql\u驱动程序。php:92堆栈跟踪:#0 C:\xampp1\htdocs\CI\system\database\DB_驱动程序。php(116):CI_DB_mysql_驱动程序-

模范班

<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');

class UserModel extends CI_Model
{
    public function getUser()
    {
        $this->load->database();
        $query = $this->db->query("SELECT * from user_accounts");       
        return $query->result();
    }
}

视图类

  <!DOCTYPE html>
    <html>
    <head>
        <title>User Accounts</title>
    </head>
    <body>
        <?php foreach($users as $user): ?>
    <table>
        <tr>
            <td><?= $user->firstname; ?></td> 
            <td><?= $user->lastname; ?></td>
        </tr>
    <?php endforeach; ?>
    </table>
    </body>
    </html>

控制器类

<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');

class UsersController extends CI_Controller 
{
    public function index()
    {
        $this->load->model('usermodel');

        $data['users'] = $this->usermodel->getUser();

        $this->load->view('user_list',$data);
    }
}

数据库php

$active_group = 'default';
$active_record = TRUE;     
$db['default']['hostname'] = 'localhost';
$db['default']['username'] = 'root';
$db['default']['password'] = '';
$db['default']['database'] = 'ci_users';
$db['default']['dbdriver'] = 'mysql';
$db['default']['dbprefix'] = '';
$db['default']['pconnect'] = TRUE;
$db['default']['db_debug'] = TRUE;
$db['default']['cache_on'] = FALSE;
$db['default']['cachedir'] = '';
$db['default']['char_set'] = 'utf8';
$db['default']['dbcollat'] = 'utf8_general_ci';
$db['default']['swap_pre'] = '';
$db['default']['autoinit'] = TRUE;
$db['default']['stricton'] = FALSE;

共有2个答案

司马高昂
2023-03-14

在PHP5中。6或更高版本,mysql函数已被弃用并完全删除。请尝试使用mysqli\uu函数。

曹驰
2023-03-14

因为您使用的是Codeigniter,所以您很可能使用的是他们的数据库类和驱动程序,所以您没有直接使用PHP的MySQL函数。

所以你需要做的就是改变

$db['default']['dbdriver'] = 'mysql';

$db['default']['dbdriver'] = 'mysqli';
 类似资料: