Php错误没有显示

时间:2012-11-02 15:41:38

标签: php mysql database-connection

我一直在尝试使用PHP链接到MySQL数据库时遇到严重问题。 php脚本崩溃而没有回显任何错误消息。

为了追踪错误我已经削减了代码。它甚至会像简单的赋值操作一样崩溃!

代码

<!DOCTYPE html>
<head>
    <title>
    </title>
</head>
<body>

Testing<br />

<?php

echo("hello")

$hostname_testserver = "stringvar";
echo(" no1 ")


?>

Testing <br />

</body>
</html>

显示nada:绝对没有任何源代码。空白屏幕,没有浏览器错误消息;什么都没有。

这是如此奇特的原因是我知道我已经成功地设法让php脚本在这个服务器上运行......正是使用了这个赋值。

所以更自然的事情就像:

<?php

/*** mysql hostname ***/
$hostname = 'HOST';

/*** mysql username ***/
$username = 'NAME';

/*** mysql password ***/
$password = 'PASSWORD';

try {
    $dbh = new PDO("mysql:host=$hostname;dbname=DATABASE", $username, $password);
    /*** echo a message saying we have connected ***/
    echo 'Successfully connected with database<br />';


    /*** INSERT data ***/
    $count = $dbh->exec($insertion);

    /*** echo the number of affected rows ***/
    echo $count;

catch(PDOException $e)
    {
    echo $e->getMessage();
    }
?>

甚至没有离开地面&gt;&lt;

3 个答案:

答案 0 :(得分:3)

错误报告可能已停用,快速查看显示您在try语句中缺少结束括号

try {
    $dbh = new PDO("mysql:host=$hostname;dbname=DATABASE", $username, $password);

    echo 'Successfully connected with database<br />';



    $count = $dbh->exec($insertion);


    echo $count;
} //This one
catch(PDOException $e)
    {
    echo $e->getMessage();
    }

答案 1 :(得分:0)

你的第一个剧本中有一些致命的错误;你忘记了一些“;”在你的echo语句之后(不需要括号内的BTW) 您应该显示PHP错误,或记录它们(并监视日志......)

答案 2 :(得分:0)

主要是服务器问题,既没有设置错误报告也没有设置PDO驱动程序,这让我很困惑。上面建议的代码,以使错误报告工作,是不成功的。在删除语法错误后,我在问题中引用的第一批代码正确运行。经过大量的呵护后,服务器最终显示一条消息,确认未安装PDO驱动程序。我最终通过移动到更好的服务器来解决这个问题,上述两个都已经预先配置好了。如果其他人正在寻找与未安装PDO相关的信息,您可以查看此处:PDOException “could not find driver”