2013-07-18 48 views
-2

我填充三個選擇框給我3個選擇框,包含日,月,時間。我正在使用此當前代碼來填充每個選項:PHP日期和時間選擇框

<select name="<?php echo $select2; ?>"> 
<?php 
$months = array(Jan, Feb, Mar, Apr, May, Jun, Jul, Aug, Sep, Oct, Nov, Dec); 
foreach ($months as &$value) 
{ 
echo '<option value="'.$value.'">'.$value.'</option>'; 
} 
?> 
</select> 

然後,我將選定結果轉換爲單個變量。它以DD-MM-YY格式存儲在DB中。我怎樣才能從數據庫中取出這些信息,並使選擇框默認爲從數據庫中取出的東西?

謝謝你們

安迪·瓊斯

回答

0

可以使用explode方法爆炸DD-MM-YY字符串。例如:

$pieces = explode("-", $date); 

這應該給你一個數組3種元素如下:

Array(
    0 => "DD", // Days 
    1 => "MM", // Months 
    2 => "YY" // Years 
) 

現在也許繼續前進,依次通過的日期,你曾經。如果它們匹配,則爲該選項添加checked屬性。

foreach ($months as $value) 
{ 
    if($value == $pieces[1]) // $pieces[1] is the months element as you'll notice above 
    echo '<option value="'.$value.'" checked>'.$value.'</option>'; 
    else 
    echo '<option value="'.$value.'" checked>'.$value.'</option>'; 
} 

你的問題含糊不清,但類似的東西可以工作。

+0

謝謝你們!這並不意味着模糊 - 我在提問時顯然是垃圾! –

0
<select name="<?php echo $select2; ?>"> 
<?php 
$months = array(Jan, Feb, Mar, Apr, May, Jun, Jul, Aug, Sep, Oct, Nov, Dec); 
foreach ($months as $i => $value){ 
    if($i+1==abs($db_value)){ 
     echo '<option selected="selected" value="'.$value.'">'.$value.'</option>'; 
    }else{ 
     echo '<option value="'.$value.'">'.$value.'</option>'; 
    } 
} 
?> 
</select>