Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/257.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP生成WSOD,尽管它';它打开了_Php_Error Reporting - Fatal编程技术网

PHP生成WSOD,尽管它';它打开了

PHP生成WSOD,尽管它';它打开了,php,error-reporting,Php,Error Reporting,我正在学习PHP,现在我正在学习如何验证表单和客户端输入 很明显,我拼错了,写了一些与PHP或类似的东西无关的东西,因为我只得到一个白色屏幕,但我就是找不到错误产生的地方 奇怪的是,即使我打开了错误报告和错误显示,我得到的只是一个所谓的WSOD(死亡白屏) 这是PHP代码: <?php error_reporting(E_ALL); ini_set('display_errors', 'On'); if (array_key_exists('_submit_check', $_POST))

我正在学习PHP,现在我正在学习如何验证表单和客户端输入

很明显,我拼错了,写了一些与PHP或类似的东西无关的东西,因为我只得到一个白色屏幕,但我就是找不到错误产生的地方

奇怪的是,即使我打开了错误报告和错误显示,我得到的只是一个所谓的WSOD(死亡白屏)

这是PHP代码:

<?php
error_reporting(E_ALL);
ini_set('display_errors', 'On');
if (array_key_exists('_submit_check', $_POST))  {
if (validate_form()) {
    process_form();
} else {
    show_form();
}
} else {
show_form();
}

function process_form() {
print "Hello, " . $_POST['my_name'];
}

function show_form() {
print<<<HTML
<form method="POST" action="$_SERVER[PHP_SELF]">
Your name: <input type="text" name="my_name">
<br>
<input type="submit" value="Say HEEELLOOO!">
<input type="hidden" name="_submit_check" value="1">
</form>
HTML;
}

function validate_form() {
if (strlen($_POST['my_name'] < 3) {
    return false;
} else {
    return true;
}
}
?>

只是一个想法-您是否通过()检查过;错误报告已打开,致命错误等未被抑制,错误未发送到文件

(是的,我知道您在脚本开始时说它已打开,并且您正在尝试更新错误报告等,但我只是检查它是否正在接收更改。):-)


本质上,如果错误报告真的打开了,您会看到一个错误。

只是一个想法-您是否通过()检查过;错误报告已打开,致命错误等未被抑制,错误未发送到文件

if (strlen($_POST['my_name']) < 3) {
(是的,我知道您在脚本开始时说它已打开,并且您正在尝试更新错误报告等,但我只是检查它是否正在接收更改。):-)

本质上,如果错误报告真的打开了,你会看到一个错误。

if(strlen($\u POST['my\u name'])<3){
if (strlen($_POST['my_name']) < 3) {
if(strlen($\u POST['my\u name'])<3){

我明白你的意思…给我一分钟,我会确保它已打开。你在哪里正确-错误存储在某个.log文件中。我如何使错误显示在屏幕上?我明白你的意思…给我一分钟,我会确保它已打开。你在哪里正确-错误存储在某个.log文件中。我如何使错误显示在屏幕上屏幕上的r?是不是if(strlen($我的名字)<3){…?因为strlen()是一个函数…所以基本上是if(strlen(某物)小于3){然后返回false…足够正确…我识别了缺少的括号,但在发布响应时将其显示在错误的位置…编辑以更正if(strlen($)不是吗['my_name']<3){…?因为strlen()是一个函数…所以基本上是如果(strlen(某物)小于3){然后返回false…足够正确…我识别了缺少的括号,但在发布响应时将其显示在错误的位置…编辑以更正