如何修复对未定义函数的调用mysqli_connect()

时间:2013-05-06 05:51:58

标签: php mysql

我正在尝试在线部署基于php的应用程序并收到以下错误:

Call to undefined function mysqli_connect() in home/spurdes/public_html/testsites/crimebusters/Repository/SQL_Connection.php on line 27.

这是第27行:

$this->connection=  mysqli_connect($this->connectionHost,$this->userName,$this->password,$this->dbName);

这是我的phpinfo

我无法访问php.init

4 个答案:

答案 0 :(得分:2)

我被要求将网站从商业网站主机移动到虚拟服务器。我在Windows Server 2008上的IIS中使用php和mysql。我通过执行以下操作解决了mysqli_connect问题。

  • 我在php.ini文件中取消注释extension = php_mysql.dll,extension = php_mysqli.dll和extension = php_pdo_mysql.dll。

在我的php文件中,我有一个带有_construct函数的类,其中包含mysqli_connect函数。这适用于Apache和Unix服务器,但不适用于IIS和Windows Server 2008.以下是代码:

<?php

class MyClass
{
    var $tablename="t_table";       
    var $connection;
    public function __construct() { 
        $this->connection = new MySQLi("host", "user", "password", "dbname", "port")or  die("Error connecting " . mysqli_error($connection));
    }
//functions that use $this->connection and $tablename are here.......
}
?>

注意:没有其他方法为$ connection分配值对我有效。这是至少12小时的互联网搜索和试错编码的结果。我是新手编码员。它可能不漂亮,但它的工作原理。我希望这会有所帮助。

答案 1 :(得分:1)

你需要一个mysqli php扩展。联系托管人或更改托管服务。

答案 2 :(得分:0)

您需要在PHP脚本中添加此代码

 dl("mysqli.so");

答案 3 :(得分:-1)

这是一个php vesrion问题

  
      
  1. 将mysqli_connect()替换为mysql_connect()
      或
  2.   
  3. 与服务器人员联系以升级您的版本
  4.