Form POST sonrasında seçme kutusunun seçili değeri tutun veya GET nasıl

5 Cevap php

Benim web arama özelliği uygulamaya çalışıyor Im.

arama anahtar metin girilir ve kategori açılan seçildiğinde, formu gönderildi olacak ve sonuç aynı sayfada gösterilir.

ne istediğim yayınlanmıştır sonra formda varsayılan combo seçilen kategoriyi tutmak

I combo kategori 'Otomobiller' seçeneğini seçin ve form gönderdikten sonra, arama tıklatın örneğin., Açılan varsayılan seçili olarak otomobil göstermelidir. Lütfen bana yardımcı olun. Herhangi bir yardım takdir edilecektir

5 Cevap

Ben veritabanından kategorileri olsun varsayalım.

denemelisiniz:

<?php

$categories = $rows; //array from database
foreach($rows as $row){
     if($row['name'] == $_POST['category']){
          $isSelected = ' selected="selected"'; // if the option submited in form is as same as this row we add the selected tag
     } else {
          $isSelected = ''; // else we remove any tag
     }
     echo "<option value='".$row['id']."'".$isSelected.">".$row['name']."</option>";
}
?>

"Combo" ederek değil, "menü ve özgür metin girişi aşağı bir damla bir arada bir combobox" "menüsünden veya liste kutusu bir açılır render olarak düzenli bir seçme elemanı" demek olduğunu varsayarsak:

<option> elemanları çıkarılırken, (HTML) $_POST / $_GET ve çıkış selected olarak sunulan verilere karşı değerini kontrol veya { [(4)]} (XHTML) seçeneği elemanının bir nitelik olarak.

İşte ben kullanıyorum JQuery yoludur.

<select name="name" id="name">
  <option value="a">a</option>
  <option value="b">b</option>
</select>

<script type="text/javascript">
   $("#name").val("<?php echo $_POST['name'];?>");
</script>

But this is only if you have jquery included in your webpage. Regards

Bu benim Problem çözüldü. Cevap tüm olanlar için teşekkürler

 <select name="name" id="name">
  <option value="a">a</option>
  <option value="b">b</option>
 </select>

<script type="text/javascript">
  document.getElementById('name').value = "<?php echo $_GET['name'];?>";
</script>
$countries_uid = $_POST['countries_uid'];
                while($row = mysql_fetch_array($result)){
                  $uid = $row['uid'];
                  $country = $row['country_name'];
                  $isSelected = null;
                    if(!empty($countries_uid)){
                    foreach($countries_uid as $country_uid){//cycle through country_uid
                       if($row['uid'] == $country_uid){
                        $isSelected = 'selected="selected"'; // if the option submited in form is as same as this row we add the selected
                       }
                    }
                   }else {
                    $isSelected = ''; // else we remove any tag
                  }
                  echo "<option value='".$uid."'".$isSelected.">".$country."</option>";
                }

Bu Mihai Iorga kodları değiştirdikten sonra birden seçin açılan kutudan benim çözümleri