私はいくつかの検証をPHPで書き出しており、送信ボタンが押された場合にのみフィールドを検証したいので、以下を追加しました:
if (isset($_POST['submit']))
私のコードの周りの行ですが、今ではまったく検証されていないようです。行を追加する前に、それはうまく検証されましたが、フォームが開かれるとすぐに検証されました。送信ボタンが押されます。これが私のコードです(私はPHPにかなり慣れていないので、おそらく見栄えがします):
<?php
if (isset($_POST['submit'])) {
$post = $_POST["post"];
$msgp = "";
if (empty($post)) {
$msgp = '<span class="error"> Please enter postcode</span>';
}
if (!empty($post)) {
if(!is_numeric($post)) {
$msgp = '<span class="error"> Data entered was not numeric</span>';
} else if(strlen($post) != 4) {
$msgp = '<span class="error"> Postcode must be 4 digits in length</span>';
} else {
$msgp = '<span class="error> Please enter a postcode</span>';
}
}
}
?>
フィールド自体は次のとおりです。
<form method="POST" action="<?php echo $_SERVER["PHP_SELF"];?>" id="eoi">
<input type="text" id="post" name="post"><?php echo $msgp; ?></td>
</form>
私のエラーを修正するための助けをいただければ幸いです。私はしばらくこれを見つめてきました。