ホームページ >データベース >mysql チュートリアル >`if(isset($_POST['submit']))` がエコーとテーブルを非表示にしないのはなぜですか?
if(isset($_POST['submit'])) がエコーとテーブルを非表示にしない理由
if(isset を使用する場合) ($_POST['submit'])) 条件の場合、目標は、フォームの [送信] ボタンがクリックされた場合にのみコンテンツを表示することです。ただし、提供されたコードでは、isset($_POST['submit']) 条件が true と評価されないため、スクリプトを開いたときにエコーとテーブルが表示されます。
根本原因
問題は、送信ボタンに name 属性がないことにあります。名前がないと、POST 配列 ($_POST['submit']) の対応する値が空になり、isset($_POST['submit']) 条件が常に false と評価されます。
修正
この問題を解決するには、送信ボタンに name 属性を追加します。
<p><input type="submit" value="Submit" name="submit" /></p>
この変更により、$_POST['submit'] の値はボタンがクリックされたときに設定され、isset($_POST['submit']) 条件が期待どおりに機能するようになります。エコーとテーブルは、ボタンをクリックした後にのみ表示されるようになりました。
以上が`if(isset($_POST['submit']))` がエコーとテーブルを非表示にしないのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。