我有一个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 />
答案 0 :(得分:0)
看起来你没有启用MySQLi。您应该检查phpinfo()
以获取MySQLi支持。