2016-03-18 4 views
2

seçilen bir değere sahip Nasıl: Örneğinzaten şu açılan uygulamış <select> etiketi

<select style="margin-left:25px;"> 
    <option value="null"> </option> 
    <option value="single">Single</option> 
    <option value="in_a_relationship">In a relationship</option> 
    <option value="engaged">Engaged</option> 
    <option value="married">Married</option> 
    <option value="open_rel">In an open relationship</option> 
    <option value="divorced">Divorced</option> 
</select> 

Say, bir kullanıcı zaten açılır menüden Single seçmiştir. Bu sayfaya geri döndüklerinde, listeden zaten seçilmiş olan single'u istiyorum. Metin alanları için veri tabanından değeri alıp bir değişkene atayabilir ve daha sonra value’a ekleyebilirim. Yani

$get_data2 = mysqli_query ($connect, "SELECT * FROM user_bio WHERE username = '$username'"); 
     $row3 = mysqli_fetch_assoc ($get_data2); 
       $bio = $row3['about_me']; 

ve sonra do ...

<textarea name="biotextarea" form="change_details" rows="4" cols="60" maxlength="255"><?php echo $bio; ?> </textarea> 

nasıl select etiket için bunu yapabilirsiniz?

+0

Böyle bir şey kullanabilirsiniz - cevabım http://stackoverflow.com/questions/34812089/selecting-default-value-in- html-dropdown-list/34817939 # Açılırsa sayısal değerlerin verilmesi ve "yukarıya bakılması", verilen değerler olarak veri tabanı ile değerleri kullanmanın daha güvenli bir yoludur ve veritabanı asla doğrudan iletişime geçmez. Bu ayrıca, yararlı bulabileceğiniz belirli açılır pencereler için başka fikirlere de sahiptir. http://stackoverflow.com/questions/34361452/many-elements-of-a-listbox-to-another/34367418#34367418 – Steve

cevap

0

Burada HTML seçeneğini Single seçmek için: Yani

<select style="margin-left:25px;"> 
 
    <option value="null"> </option> 
 
    <option value="single" selected>Single</option> 
 
    <option value="in_a_relationship">In a relationship</option> 
 
    <option value="engaged">Engaged</option> 
 
    <option value="married">Married</option> 
 
    <option value="open_rel">In an open relationship</option> 
 
    <option value="divorced">Divorced</option> 
 
</select>

, nasıl Bunu PHP’de ayarlamak için ?!

Eh, bu gibi <select> eleman oluşturabilir:

<?php 
$options = [ 
    'null' => ' ', 
    'single' => Single', 
    'in_a_relationship' => 'In a relationship', 
    'engaged' => 'Engaged', 
    'married' => 'Married', 
    'open_rel' => 'In an open relationship', 
    'divorced' => 'Divorced' 
]; 
?> 
<select style="margin-left:25px;"><?php 
    foreach($options as $key => $value) { 
      echo '<option value="' . $key . '"'; 
      if ($key === $row3['status']){ 
       echo ' selected'; 
      } 
      echo '>' . $value . '</option>'; 
    } 
?></select> 
1

Seçme etiketinde önceden seçilmiş bir seçenek belirlemek, seçili özniteliğe seçili bir özellik koymanızı gerektirir.

<select style="margin-left:25px;"> 
<?php 
    $options = array(array("null"," "),array("single","Single"),array("in_a_relationship","In a relationship"),array("engaged","Engaged"),array("married","Married"),array("open_rel","In an open relationship"),array("divorced","Divorced")); 
    foreach ($option in $options){ 
     if ($option[0] == $row3['status']){ 
      $selected = 'selected '; 
     } 
     else{ 
      $selected = ''; 
     } 
     echo '<option '.$selected.'value="'.htmlspecialchars($option[0]).'">'.htmlspecialchars($option[1]).'</option>'; 
    } 
?> 
</select> 
0

Tamam, ama çok fazla PHP değiştirmek istemiyorsanız JavaScript ile görev yapabilir Musa çözümü.

jQuery veya saf JavaScript ile

function selector(id, value){ 
    select = document.getElementById(id); 
    for(i=0;i<select.options.length;i++){ 
    if(select.options[i].value == value){ 
     select.selectedIndex = i; 
    } 
    } 

} 
//Pure Javascript 
selector("status", "engaged") 

//With jQuery 
jQuery('#status').val('married'); 

Kontrol bu Snippet