2016-04-02 19 views
0

申し訳ありませんが、悪いタイトルのため、私の英語は悪いです。optgroupの選択は週、日に基づいて行います

<select class="chosen2" name="mac" onchange="this.form.submit()"> 
<option></option> 
<?php 
error_reporting(0); 
$maclist = mysql_query("SELECT year,split,leagueid,takim,versus,mac,week,day 
FROM league WHERE id >= 0 $ligsarry $yearsarrf $splitsarrf GROUP by mac ORDER BY hafta desc,gun desc,mac desc,side asc, id asc"); 
while ($macs=mysql_fetch_array($maclist)) { 
?> 
    <option <?php if (isset($_GET['mac']) && $_GET['mac']==$macs['mac']) {echo "selected='selected'"; } ?> value="<?php echo $macs['mac']; ?>"><?php echo $macs['mac'] . " -- W" . $macs['week'] . "D" . $macs['day'];;?></option> 

<?php }?> 
</select> 

このコードで、この結果を得るイム:

enter image description here

私は<optgroup label="Week 1 Day 2"> -w1d2 matches- </optgroup>
<optgroup label="Week 1 Day 1"> -w1d1 matches- </optgroup>

を追加したいしかし、私はこれを行う方法を知りません。日中マッチカウントは常に4

答えて

1

ではない私は、これは動作するはずだと思う:

$current_day = 0; 

while (...) { 

    if ($macs['day'] != $current_day) { 

     if ($current_day > 0) { 
      print '</optgroup>'; 
     }    

     print '<optgroup>'; 

     $current_day = $macs['day']; 
    } 

    print '<option>...</option>'; 

} 

if ($current_day > 0) { 
    print '</optgroup>'; 
} 

あなたは、新しい$macs['day']を読むたびに<optgroup>

+0

私はこのコードを実行すると、それは8 optgroupsを与えるを印刷します。 :[ –

+0

私はいくつかの変更を加えました。もう一度お試しください! –

+0

これは動作していますが、最後の 'if($ current_day> 0){ ''を削除しなければなりませんでした。 } optgroupの最初の子がそれを削除した後、optgroupタグを閉じていたので、作業してくれてありがとう! –

関連する問題