0

我正在尝试在线部署基于 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

4 回答 4

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 小时的互联网搜索和试错编码的结果。我是新手编码员。它可能不漂亮,但它有效。我希望这有帮助。

于 2014-01-07T14:48:26.667 回答
1

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

于 2013-05-06T05:55:59.177 回答
0

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

 dl("mysqli.so");
于 2013-05-06T05:58:49.067 回答
-1

这是一个php版本问题

  1. 您将 mysqli_connect() 替换为 mysql_connect()
  2. 联系服务器人员以升级您的版本
于 2015-07-06T11:45:35.047 回答