mysqli_connect在从Web浏览器运行时杀死php脚本

时间:2014-11-17 03:05:37

标签: php mysqli

我有一个PHP脚本做一些计算然后连接到mysql数据库来写一些数据。当我从终端运行脚本时,脚本运行正常。当我从网页运行脚本时(单击页面中的按钮时启动),脚本一旦到达php代码中的mysql_connect语句就会死掉。

不确定为您提供哪些代码或数据来帮助您进行调试...只是在没有错误消息的情况下死掉。如果有人对要发布的其他数据有任何建议,请告诉我。

可能是某种权限问题吗?由于某些原因,在终端我的帐户可以访问包含mysqli_connect功能的mysqli库,但是apache web用户没有这些权限?我被困了......以前从未见过这个。

test.php的:

<?php
error_reporting(E_ALL);
ini_set('display_errors', 1);
connectToDB();
print "hi manny";

function connectToDB() {
$hostname = "XXXXX";
$port = "XXX";
$schema = "XXXX";
$username = "XXXXX";
$password = "XXXXX";

print "got inside\n";
$dbh = mysqli_connect($hostname, $username, $password, $schema, $port);
print "got connect\n";
// Check connection
if (!$dbh) {
    echo "connection failed\n";
    die("Connection failed: " . mysqli_connect_error());
 }
 echo "Connected successfully\n";
 return $dbh;
}
?>

从命令行运行时:

  

[manoli @ app01 site1] $ php -f test.php
  进去了   有连接
  已成功连接
  嗨,曼尼

     

从网页通过ajax运行时:
  进去了   

  致命错误:在 16 < /var/www/apps/site1/test.php 中调用未定义的函数mysqli_connect() BR />

1 个答案:

答案 0 :(得分:0)

看起来你没有启用MySQLi。您应该检查phpinfo()以获取MySQLi支持。