1

ページ「index.php」にphpでフォームを作成しています。ページが読み込まれると、次のフォームが作成されます。

if($_SERVER['REQUEST_METHOD']!='POST')
{
        echo '
        <form action="index.php" method="POST">
        <fieldset style="width: 700px;">
        <legend>Enter your search below</legend>
        <textarea rows="1" cols="80" name="query">
        </textarea>
        </fieldset>
        <p>
        <input type="radio" value="Non-Aggregated"> Non-Aggregated
        <input type="radio" value="Aggregated"> Aggregated 
        &nbsp;
        &nbsp;
        <input type="submit" value="Search">
        </p>
        </form>';   
}

ユーザーが送信ボタンをクリックすると、適切なコンテンツが表示されます。

else
{
    if ($_POST['query'])
    {
        //content displayed after form submission
    }
}

フォームに戻り、ラジオ オプションに注意してください。

<input type="radio" value="Non-Aggregated"> Non-Aggregated
<input type="radio" value="Aggregated"> Aggregated

非集約または集約がラジオ ボタンから選択されているかどうかに基づいて、異なるアクションを実行するために if ステートメントに配置できる条件はありますか? もしそうなら、どうすればこれを行うことができますか?

助けてくれてありがとう。

4

4 に答える 4

4

まず、ラジオに「名前」を割り当てます。どちらも同じです。

<input type="radio" name="aggregation" value="Non-Aggregated"> Non-Aggregated
<input type="radio" name="aggregation" value="Aggregated"> Aggregated 

「else」節で、代わりに小さな変更を加えます

if($_SERVER['REQUEST_METHOD']!='POST')

使用する

if($_SERVER['REQUEST_METHOD']=='POST')

最後になりましたが、最後の if... の中に条件を追加します。

if ($_POST['aggregation'] == 'Aggregated')
{
// Actions for Aggregated
}
else
{
// Actions for Non-Aggregated
}
于 2013-07-02T10:41:53.930 に答える
3

作業コードは次のとおりです。

<?php if($_SERVER['REQUEST_METHOD']!='POST')
{
    $form = <<<FORM
<form action="" method="POST">
<fieldset style="width: 700px;">
<legend>Enter your search below</legend>
<textarea rows="1" cols="80" name="query">
</textarea>
</fieldset>
<p>
<input type="radio" value="Non-Aggregated" name='radioCheck'> Non-Aggregated
<input type="radio" value="Aggregated" name='radioCheck'> Aggregated 
&nbsp;
&nbsp;
<input type="submit" value="Search">
</p>
</form>
FORM;
echo $form;
}
elseif($_SERVER['REQUEST_METHOD']=='POST' && isset($_POST['radioCheck']) && $_POST['radioCheck'] =='Non-Aggregated'){

// Non-Aggregated form
    echo 'Non-Aggregated';

}elseif($_SERVER['REQUEST_METHOD']=='POST' && isset($_POST['radioCheck']) && $_POST['radioCheck'] =='Aggregated'){
// Aggregated form

    echo 'Aggregated';
}
?>
于 2013-07-02T10:44:45.907 に答える
3
<?php
if($_SERVER['REQUEST_METHOD']!='POST')
{
    // echo the form and don't forget to give the radio inputs a name
    // <input name="agg" type="radio" value="Non-Aggregated"> Non-Aggregated
    // <input name="agg" type="radio" value="Aggregated"> Aggregated 
}
else if (isset($_POST['agg']))
{
    if ($_POST['agg'] == 'Aggregated') {
        // do one thing
    } else {
        // do something else
    }
}
于 2013-07-02T10:43:18.257 に答える