2014-01-06 56 views
0

我有一個mysql條目,作爲1到10的整數。我想在下拉菜單中顯示預選的結果。我使用 -獲取mysql記錄的值並在下拉菜單中顯示

<select name="Sleeps"> 
<?php 
$sleeps = $row['Sleeps']; 

$selectedId = array(1, 2, 3); 
$selection = array(
     1 => "1", 
     2 => "2", 
     3 => "3"); 

foreach($selection as $value){ 
    $text = $value; 
    $selected = ''; 
    if ($selectedID == $sleeps) { 
     $selected = 'selected'; 
    } 
    echo '<option value="'.$text.'" selected="'.$selected.'">'.$text.'</option>'; 
} 
?> 
</select> 

這幾乎工程,我得到 -

<option value="1" selected="selected">1</option> 
<option value="2" selected="selected">2</option> 
<option value="3" selected="selected">3</option> 

但所有選項選擇=「選擇」,我只是想值我在我的數據庫中選擇,我認爲應該僅僅是 '選擇' 的文字像 -

請幫助我是新來這個

+0

誰是'$ sleeps'?做一個''的$ selectedID'值的echo'和'$ sleeps' – jcho360

回答

0
if ($selectedID == $sleeps) { 
    $selected = 'selected'; 
} 

應該

if ($text == $sleeps) { 
    $selected = 'selected'; 
} 

selectedID不被任何定義,但是,selectedId是,如果你想它被sleected爲任意數量的陣列中,使用

if (in_array($sleeps, $selectedID)) { 
    $selected = 'selected'; 
} 
+0

感謝這個,我的主要問題是,我在每個選項中選擇=「selected」,在那裏我只需要選擇對其中一個選擇的單詞 - 與數據庫中的值相同。謝謝。 – user1823053

+0

我已經修復了這個現在我沒有得到$睡眠的價值 – user1823053