2017-11-24 14 views
-1

issetpostのphpの機能をテストしています。私がしたいことは、「追加」ボタンをクリックするたびに、「ハロー」をエコーし​​ます。ボタンをクリックしても何も起こりません。私はif (isset($_POST['FORM']))がフォームに$_post何かがあるかどうかをチェックしていることを認識しているので、 "HELLO"を正しくエコーする必要がありますか?しかし、その意図したように動作していません。

<?php 

if (isset($_POST['FORM'])){ 

echo "HELLO"; 

} 



?> 

<html> 

<body> 

<form method="post" name="FORM"> 
    Book Id: <input type="text" name='bookid' /><br/><br/> 
    Book Name: <input type="text" name='bookname' /><br/><br/> 
    Borrow Date: <input type="text" name='borrowdate' /><br/><br/> 
    Return Date: <input type="text" name='returndate' /><br/><br/> 
    <input type="submit" value="ADD"><br/><br/> 
</form> 

</body> 

+0

あなたはそれを行うことはできません。 –

+0

チェックする必要があるのは他の名前の1つです。$ _POSTには、bookid、bookname、borrowdate、returndateの名前が含まれていなければなりません。 'isset'を使う前に' print_r($ _ POST) 'を使います。配列に含まれるキーの情報が含まれている必要があります。 –

答えて

5

<form>は、name属性を使用していないので、あなたが今持っていることは動作しません使用する必要があると思います。

入力として名前属性を使用して、値として渡す内容をエコーする必要があります。

<form method="post" name="FORM">からname属性を削除し、をPOST配列に変更し、POST配列に変数を代入します。

フォームを扱う方法については、php.netのマニュアルを参照してください。ここで

それから引き出さ例です:を使用している間

Hi <?php echo htmlspecialchars($_POST['name']); ?>. 
You are <?php echo (int)$_POST['age']; ?> years old. 

HTML:

<form action="action.php" method="post"> 
<p>Your name: <input type="text" name="name" /></p> 
<p>Your age: <input type="text" name="age" /></p> 
<p><input type="submit" /></p> 
</form> 

PHP/empty()empty()はまた、その内部に、空の入力をチェックし、その後の名前とisset()内のすべてのものをラップする必要があるであろう、送信ボタンに対してデータ入力とisset()に最適な

条件文

+0

[Johannes](https://stackoverflow.com/a/47475297/1415724)が条件文を作成し、それを基にする方法を参考にしてください。 –

3

あなたは

if (isset($_POST['bookid']) || isset($_POST['bookname']) || isset($_POST['borrowdate']) || isset($_POST['returndate'])) { 

    echo "HELLO"; 

} 
関連する問題