0

同じフォームに2つの同様の選択オプションが必要ですが、両方ともデータベース上の2つの異なるフィールドにリンクされているため、誰でもコードを修正できます。2 つの送信ボタンは必要ありません

echo "
      <form method=\"post\" action=\"".$_SERVER['PHP_SELF']."\">
      <p><strong>Event Time (hh:mm):</strong><br/>
      <select name=\"event_time_hh\">";
      for ($y=1; $y<=24; $y++){
       echo "<option value=\"$y\">$y</option>;

     <p><strong>Event end (hh:mm):</strong><br/>
     <select name=\"event_end_hh\">";
     for ($y=1; $y<=24; $y++){
       echo "<option value=\"$y\">$y</option>";
}
echo "</select> :
      <select name=\"event_end_mm\">
      <option value=\"00\">00</option>
      <option value=\"15\">15</option>
      <option value=\"30\">30</option>
      <option value=\"45\">45</option>
      <input type=\"submit\" name=\"submit\" value=\"Add Event!\">";
echo "</select> :
      <select name=\"event_time_mm\">
      <option value=\"00\">00</option>
      <option value=\"15\">15</option>
      <option value=\"30\">30</option>
      <option value=\"45\">45</option>
      <input type=\"submit\" name=\"submit\" value=\"Add Event!\">
</form>";
4

3 に答える 3

1

最初のコードに終了「select」タグがないようです。これにより、構文エラーが発生している可能性があります。

代わりに、必要な場合にのみPHPを使用することで、ややクリーンなアプローチを試すことができます(すべての引用符をエスケープする必要があります)。

<form method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>">
<p><strong>Event Time (hh:mm):</strong></p></br />
<select name="event_time_hh">
    <?php
        for ($y=1; $y<=24; $y++) {
            echo "<option value=\"$y\">$y</option>";    
        }
    ?>
</select>

<p><strong>Event end (hh:mm):</strong></p></br />
<select name="event_time_hh">
    <?php
        for ($x=1; $x<=24; $x++) {
            echo "<option value=\"$x\">$x</option>";    
        }
    ?>
</select>

<select name="event_time_mm">
    <option value="00">00</option>
    <option value="15">15</option>
    <option value="30">30</option>
    <option value="45">45</option>
</select>

<select name="event_end_mm">
    <option value="00">00</option>
    <option value="15">15</option>
    <option value="30">30</option>
    <option value="45">45</option>
</select>

<input type="submit" name="submit" value="Add Event" />
</form>

さらに、フォームが送信されたかどうかを確認してから、入力を検証して処理することができます。

<?php

// Check to see if form has been submitted.
if (isset($_POST['submit'])) {

    /*  Some validation should be performed here to ensure the following
     *  values have actually been selected prior to form being submitted.
     */  
    $event_time_hh = $_POST['event_time_hh'];
    $event_time_mm = $_POST['event_time_mm'];
    $event_end_hh = $_POST['event_end_hh'];
    $event_end_mm = $_POST['event_end_mm'];

}
?>
于 2012-08-31T11:23:59.493 に答える
0

質問は私には少しあいまいに見えます。しかし、私の理解では、このようなことができます

<form action="output.php method="post">
<select name="box1">
// here you populate from db field1
</select>

<select name="box2">
// here you populate from db field2
</select>

<input type="submit" value="submit>

</form>

output.php で

<?php
$box1 = $_POST['box1'];
$box2 = $_POST['box2'];
?>
于 2012-08-31T10:46:05.363 に答える
0

index.php エコー ' '; for($y=1;$y<=24;$y++) echo "$y";

echo '</select>';

echo '
<select name="box2"> ';
for($y=1;$y<=24;$y++)
echo "<option value='$y'>$y</option>";
echo '
</select>

<input type="submit" value="submit">
</form> ';

output.php

$box1_value = $_POST['box1'];
$box2_value = $_POST['box2'];

これで、box1 と box2 には、2 つのそれぞれのドロップダウン ボックスで選択された値が含まれます。それがあなたの要件を満たすことを願っています

于 2012-08-31T11:13:32.083 に答える