Nasıl MySQL PHP SEÇİLEN seçeneği öne getirmek mi?

2 Cevap php

Benim güncelleme formda, ben alanlar zaten depolanan değerleri hatırlamak istiyorum. Bu) PHP kullanıcı zaten kayıtlı ismi okuma ile sorun yaşıyorum (bir metin alanında, ama aşağı benim damla için çok basittir. İşte benim sorgu ve kodu:

$sql = "SELECT users.user_id, users.name FROM users";
                $result = mysql_query($sql, $connection)
                or die ("Couldn't perform query $sql <br />".mysql_error());
                $row = mysql_fetch_array($result);?>

        <label>Designated Person:</label> <select name="name" id="name">

        <option value="<?php echo $row['user_id']?>" SELECTED><?php echo $row['name']?> - Current</option>

         <?php    
              while($row = mysql_fetch_array($result))
        { ?>                        <option value="<?php echo $row['user_id']; if (isset($_POST['user_id']));?>"><?php echo $row['fullname']?></option>
        <?php } ?>

Bunun sonucu (gerektiği gibi) kullanıcıların tüm görüntüler ve bana her zaman benim veritabanında ilk ve seçildi asla kullanıcı ancak 'SEÇİLMİŞ' ... başarıyla değişikliğini gerçekleştirmek ardından bir kullanıcı seçin sağlar zaman benim etkinlik ilave edildi: (!

2 Cevap

Şimdi ne yapıyoruz olduğunu:

  • Ilk sonuç satırı seçme ve kodlanmış seçilen bir seçenek olarak basılması;
  • Seçenekleri çıkış sonuçları satırın geri kalanı sokmak Döngü; Her yerde seçili değeri için kontrol etmiyor, ancak hiçbir amaç için () eğer orada boş olan;
  • Şu anda kayıtlı isim düzenlenen nerede yerde göremiyorum.

: ($curname seçili isim olduğunu varsayarak) bu deneyin

$sql = "SELECT users.user_id, users.name FROM users";
        $result = mysql_query($sql, $connection)
        or die ("Couldn't perform query $sql <br />".mysql_error());
?>

<label for="name">Designated Person:</label>
    <select name="name" id="name">

 <?php    
      while($row = mysql_fetch_array($result))
{ ?>                        
    <option value="<?php echo $row['user_id'] ?>" <?php if ($curname == $row['name']) echo ' SELECTED'; ?>><?php echo $row['fullname']?></option>
<?php } ?>

Hmm ... ben senin kodu tamamlandı olmadığını düşünüyorum. Ex son seçenek var bir if deyimi ... hiçbir şey yapmaz ve aynı seçme elemanı iki diffrent seçenek seçili koymak gerekir.

İlk seçenek her zaman varsayılan seçilirse isimli başka hiç kimse, ve .... xhtml için kullanmayı deneyin seçilen = yerine SEÇİLMİŞ yorum "seçilmiş"

Ayrıca, $ row ['fullname'] echo için çalışıyoruz, ancak sorgu sütun 'adı' getiriliyor

<?php
$sql = "SELECT users.user_id, users.name FROM users";
$result = mysql_query($sql, $connection) or die ("Couldn't perform query $sql <br/>".mysql_error());
$row = mysql_fetch_array($result);
?>

<label>Designated Person:</label> 

<select name="name" id="name">
    <option value="<?php echo $row['user_id']?>"><?php echo $row['name'] ?> - Current</option>
<?php    
while($row = mysql_fetch_array($result)){ ?>
   <option 
      value="<?php echo $row['user_id'] ?>"
      <?php echo (isset($_POST['name']) && $_POST['name'] == $row['user_id']) ? ' selected="selected"' : '');?>
><?php echo $row['name']?></option>
<?php } ?>