1

私はPHPを学んでおり、この時点でフォームとクライアント入力を検証する方法を学んでいます.

白い画面しか表示されないため、スペルを間違えたり、PHP などに関係のないものを書いたりしたことは明らかですが、エラーが生成された場所を見つけることができません。

奇妙なことに、エラーの報告とエラーの表示をオンにしても、いわゆる WSOD ( White Screen of Death )しか表示されないということです。

これは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;
}
}
?>

「なぜこのサーバーサイドでやっているのですか?ブラブラブラ」はやめてください、それは単なる「演習」です

どこでエラーが発生したかを特定できる場合はお知らせください。また、間違えたときに白い画面しか表示されない理由を教えていただける場合は、それもお知らせください。:) ありがとう

4

2 に答える 2

2
if (strlen($_POST['my_name']) < 3) {
于 2010-08-08T19:36:02.040 に答える