我有一个php脚本(machine_db.php),它连接到mysql数据库,如下所示:
<?php
//phpinfo();
// 1 connect to mysql
$servername = "localhost";
$username = "root";
$password = "abcd";
$conn = mysqli_connect($servername, $username, $password);
...
?>我正在使用:
我使用Eclipse,并为Eclipse安装了PHP包(外接程序或任何名称)。然后,我创建了一个php项目,并将我的php文件添加到项目中,并以php cli应用程序的身份运行,但我在Eclipse控制台中得到了以下错误:
PHP Fatal error: Call to undefined function mysqli_connect() 但是,当我从终端运行完全相同的脚本时,不会出现任何错误,例如:
php machine_db.php我还看到,在我的Eclipse项目资源管理器中,有一个PHP语言库,它包含mysqli类。
发布于 2016-03-23 00:40:35
我想你忘了数据库的名字:
$servername = "localhost";
$username = "root";
$password = "abcd";
$db_name = "my-db";
$conn = mysqli_connect($servername, $username, $password, $db_name);您也可以使用
$conn = new mysqli($servername, $username, $password, $db_name);文档:http://php.net/manual/fr/mysqli.construct.php
还请尝试安装php5-mysqli。
sudo apt-get update
sudo apt-get install php5-mysql php5-mysqli
sudo service apache2 restart不要忘记在/etc/php5 5/apache2/php.ini中取消这一行的注释
extension=php_mysql.so
extension=php_mysqli.so不要忘记重新启动apache服务器。
sudo service apache2 restart发布于 2016-03-23 01:48:55
我刚刚意识到,如果在eclipse中,我在window->preferences->php->phpexecutables下检查“window->preferences->php->phpexecutables”,它会神奇地工作。
有人知道什么是“系统默认php.ini”吗?
我做了一个快速的$php --ini,它返回:
Configuration File (php.ini) Path: /etc/php5/cli
Loaded Configuration File: /etc/php5/cli/php.ini
Scan for additional .ini files in: /etc/php5/cli/conf.d
Additional .ini files parsed: /etc/php5/cli/conf.d/05-opcache.ini,
/etc/php5/cli/conf.d/10-mysqlnd.ini,
/etc/php5/cli/conf.d/10-pdo.ini,
/etc/php5/cli/conf.d/20-json.ini,
/etc/php5/cli/conf.d/20-mysql.ini,
/etc/php5/cli/conf.d/20-mysqli.ini,
/etc/php5/cli/conf.d/20-pdo_mysql.ini,
/etc/php5/cli/conf.d/20-readline.inihttps://stackoverflow.com/questions/36167808
复制相似问题