PHP脚本在命令行上运行,但不在浏览器中运行

时间:2013-02-07 22:43:33

标签: php mysql apache2

我是一个完全的初学者,但我已经建立了一个EC2服务器,我正在尝试开发一个简单的基于php-mysql的网站。

我设法让apache2运行,我有一个指向服务器的域名。我正在尝试建立一个非常简单的PHP脚本来附加到数据库。当我使用命令行php simple_script.php

时,以下脚本运行得非常好
<?php

echo "Hello\n";

$con = mysql_connect("localhost","james","<password>");
if($con){
echo "Connected\n";
}
?>

然而,当我去www.myurl.com/simple_script.php时,我只看到“你好”这一行。感谢任何帮助!

好的,所以我检查了apache错误日志,这是说: PHP Fatal error: Call to undefined function mysql_connect() in /var/www/www.myurl.com/simple_script.php on line 5 有任何想法如何解决这个问题?

3 个答案:

答案 0 :(得分:1)

添加:

else {
    die(mysql_error());
}

找出错误

答案 1 :(得分:1)

您正在使用已弃用的功能。使用mysqli_ *或查看PDO类。 http://php.net有很好的语言文档:)

答案 2 :(得分:0)

如果您正在尝试解决问题(如果这不在生产服务器上),我将首先通过在php.ini文件中启用错误报告来显示php错误。要找出php.ini所在的位置,请创建一个使用phpinfo()函数的文件,然后您应该获取该路径。 (这也会告诉你mysql是否正在运行。)

<?php phpinfo();?>

在php.ini中,查找“error_reporting”行并将其设置为:

error_reporting = E_ALL&amp; 〜E_NOTICE