6

$_POSTphp関数を使用しているフォームを作成しています。

これが私のフォームの様子です。

form.php

<h1>Songs Movies Form</h1>
<hr />

<form action="songs-movies.php" method="post">

Song Name:
Enter Song Name: <input type="text" name="SongName" size="25" />

Enter Movie Name: <input type="text" name="MovieName" size="25" />

<input type="submit" value="Submit" name="submit" />

</form>

<br />
<a href="/forms/">Back to Forms</a>
<hr />

ここで、 SongNameMovieNameの結果を表示したいので、echo $_POST["SongName"];を使用しました。そしてecho$_POST ["MovieName"]; 結果を完全に生成します。

ここで、これらの値SongNameMovieNameを結果/出力ページのtext / line / paraの間に置きたいのですが、 SongNameまたはMovieNameの値が空の場合、結果/出力はその特定のtext / line/paraを表示しないはずです。それらの機能を配置しました。

例えば


ABCの歌XYZ映画の人気曲です。XYZ映画ABCの歌はPQRディレクターによって監督されています。


これで、上記のパラグラフに2つの文があることがわかります。SongNameMovieNameのフィールド値が空の場合にのみ、最初の文の関数を配置したい

  • SongNameMovieNameのフィールド値が空であるかどうか、つまりABCSongがXYZMovieの人気のあるSongであるかどうかに関係なく、最初の文を表示する必要があります。SongNameMovieNameのフィールド値が空の場合、それらの間に空白を残すことができます。これは、この関数echo $_POST["SongName"];を介して実行できることがわかります。

しかし

  • SongNameMovieNameのフィールド値が空の場合、つまりXYZMovieのABCSongがPQ​​Rディレクターによって指示されている場合は、最初の文の行を表示しないでください
4

3 に答える 3

17

あなたが探しているのは次のようなものだと思います:

if(!empty($_POST['foo'])) {
   echo "a sentence".$_POST['foo']." with something in the middle.";
}

これにより、値が空ではないことが確認されますが、空の場合は PHP で多くのことを意味するため、より具体的にする必要がある場合があります。たとえば、次のように設定されているかどうかを確認したい場合があります。

if(isset($_POST['foo'])) {
   echo "a sentence".$_POST['foo']." with something in the middle.";
}
于 2012-06-08T12:46:45.433 に答える
2

最後の 2 ~ 3 文で本当に混乱しました。
やりたいことは、if、elseif、else 制御構造を使用して実現できます。

if ($_POST['MovieName'] AND $_POST['SongName']) 
{
    //code
}  
elseif ($_POST['MovieName'])
{
    //code
}  
elseif ($_POST['SongName']) 
{
    //code
}  
else 
{
    //code
}
于 2012-06-08T12:48:45.480 に答える
0

これには 3 つの方法があります。

  1.  

    if(isset($_POST['value1']))
    {
        //...
    }
    
  2.  

    if(!empty($_POST['value1'])) 
    {
        //...
    }
    
  3. そして簡単な方法

    if($_POST('value1')=="")
    {
        ....
    }
    

フォーム送信と混同されたときは、3 番目の方法を使用することがありますが、もちろん、1 番目と 2 番目の方法の方がエレガントです。

于 2012-06-08T12:49:51.567 に答える