如何在文本而不是HTML中犯PHP错误

2022-08-30 20:39:05

可能的重复:
我如何告诉PHP将异常转储为原始文本而不是HTML?

我正在尝试使用C#和php制作登录脚本,我计划将其作为1键安装出售,因此我需要它来防止错误。我故意试图在设置中犯错误,但是每当我的php脚本出错时,它都有一个HTML块输出,当我只想要一个字符串输出(参考图像)时,它就会出错。

这是我正在使用的代码

// We will now set up our MySQL database login. The values should be self-explanatory. 
$sqlhost = "localhost";
$sqlusername = "unity";
$sqlpassword = "mypass123";

//we will now connect to our database
$sqlcon = mysql_connect($sqlhost, $sqlusername, $sqlpassword) or die("Could not connect to database: " . mysql_error());

当我拥有所有信息时,它工作正常,其余的代码运行没有错误。但是,如果我的密码错误或用户没有访问权限,那么我会收到此错误

Error I am trying to avoid

我从此页面检索到信息,需要将其作为计划文本发送才能正确显示。我的意思是,任何像etc这样的HTML标签通常都会使文本输出看起来很糟糕。我希望它只显示页面底部的文本,因为它会记录错误本身。我不需要它记录两次,我也不需要它被格式化。我需要它以纯可读的文本显示,以便如果用户出现错误,他们可以向我发送短文本,我将能够引导他们完成修复。<div>, <br>, <a>,


答案 1

PHP 是显示纯文本还是 html 错误取决于您的 php.ini 配置

html_errors boolean

关闭错误消息中的 HTML 标记。HTML 错误的新格式会生成可单击的消息,这些消息会将用户定向到描述错误或导致错误的功能的页面。这些引用受docref_root和docref_ext的影响。

该设置可设置为 ,这意味着任何位置,包括您的脚本。所以要禁用html错误做PHP_INI_ALL

ini_set('html_errors', false);

在脚本的开头。


答案 2

推荐