0
<HTML>
<HEAD>
<TITLE> <b> Select the colors you want </b> </TITLE>
</HEAD>
<BODY>
<FORM action="colortables.php" method='post'>
<p>Pick one or more of the colors: </p><br/>
<select name='bcolors[]' size=8 multiple>
<?php
  $pickcolors = array('red', 'blue', 'green', 'yellow', 'orange', 'black', 'white' 'purple');
  foreach ($pickcolors as $colors) {
    printf("<option value='%s'>%s", $colors, $colors);
  }
?>
</select>
<select name='tcolors[]' size=8 multiple>
<?php
  $pickcolors2 = array('red', 'blue', 'green', 'yellow', 'orange', 'black', 'white', 'purple');
   foreach ($pickcolors2 as $colors) {
     printf("<option value='%s'>%s", $colors, $colors);
   }
?>
</select>
<p><input type='submit' value='pick'></p>
</FORM>
</BODY>
</HTML>

私はまだHTMLに比較的慣れていないので、簡単にしてください。上記のコードで、各ボックスに8色のオプションを持つ2つの単純なボックスを配置して、色とテキストの組み合わせの掛け算表のようなものを送信することができます。何らかの理由で、このコードは、テキストの色に何を選んでも、何も選択していないと言っています。どんな助けでも素晴らしいでしょう

編集: tcolors はテキストの色で、bcolors は背景色です

4

4 に答える 4

0

両方の選択ボックスに同じ配列を使用できるようです。

あなたは好きかもしれません

<select name='bcolors[]' size=8 multiple>
<?php
  $pickcolors = array('red', 'blue', 'green', 'yellow', 'orange', 'black', 'white','purple');
  foreach ($pickcolors as $colors) {
    echo "<option value='".$colors."'>".$colors."</option>";
  }
?>
</select>

<!-- second select box with same array -->
<select name='tcolors[]' size=8 multiple>
<?php
  foreach ($pickcolors as $colors) {
    echo "<option value='".$colors."'>".$colors."</option>";
  }
?> 
</select>  
于 2013-10-03T04:20:13.453 に答える
0

'white' and 'purple'最初の配列の間にコンマ (,) がありません

ループでオプションを閉じませんでした

<HTML>
<HEAD>
<TITLE> <b> Select the colors you want </b> </TITLE>
</HEAD>
<BODY>
<FORM action="colortables.php" method='post'>
<p>Pick one or more of the colors: </p><br/>
<select name='bcolors[]' size=8 multiple>
<?php
  $pickcolors = array('red', 'blue', 'green', 'yellow', 'orange', 'black', 'white', 'purple');
  foreach ($pickcolors as $colors) {
    printf("<option value='%s'>%s</option>", $colors, $colors);
  }
?>
</select>
<select name='tcolors[]' size=8 multiple>
<?php
  $pickcolors2 = array('red', 'blue', 'green', 'yellow', 'orange', 'black', 'white', 'purple');
   foreach ($pickcolors2 as $colors) {
     printf("<option value='%s'>%s</option>", $colors, $colors);
   }
?>
</select>
<p><input type='submit' value='pick'></p>
</FORM>
</BODY>
</HTML>
于 2013-10-03T04:22:27.633 に答える
0
    <select name='bcolors[]' size=8 multiple>
    <?php
      $pickcolors = array('red', 'blue', 'green', 'yellow', 'orange', 'black', 'white', 'purple');
      foreach ($pickcolors as $key1=>$value1) {?>
        <option value="<?php echo $value1;?>"><?php echo $value1;?></option>
     <?php }
    ?>
    </select>
    <select name='tcolors[]' size=8 multiple>
    <?php
      $pickcolors2 = array('red', 'blue', 'green', 'yellow', 'orange', 'black', 'white', 'purple');
       foreach ($pickcolors2 as $keys=>$values) {?>

     <option value="<?php echo $$values;?>"><?php echo $values;?></option>

    <?php   }
    ?>
    </select>

<inpu type="submit" name="submit" value="pick">
于 2013-10-03T04:33:09.310 に答える
0

使用時にタグprintf()を閉じませんでした。@Ashish が見つけたように、配列内の<option>も修正します。,

<select name='bcolors[]' size=8 multiple>
<?php
   $pickcolors = array('red', 'blue', 'green', 'yellow', 'orange', 'black', 'white', 'purple');
   foreach ($pickcolors as $colors) {
      echo "<option value='$colors'>$colors</option>";
   }
?>
</select>

select2番目も上記のように置き換えます。

于 2013-10-03T04:18:03.263 に答える