Mysql
 sql >> Baza danych >  >> RDS >> Mysql

PHP i MySQL — jak wyświetlić wybraną wartość w menu rozwijanym

Twoim największym problemem jest niepoprawny dostęp do wartości bazy danych. mysql_fetch_array() nie zwraca obiektu. Zwraca tablicę. Używasz więc składni tablicy ($rows['key'] ) nie składnia obiektowa ($rows->key ).

Po prostu sprawdź, czy wartość opcji odpowiada wartości $rows['agama'] . Jeśli tak, dodaj selected atrybut.

<select name="agama" id="agama">
    <option value="Islam"<?php if ($rows['agama'] === 'Islam') echo ' selected="selected"'>Islam</option>
    <option value="Khatolik"<?php if ($rows['agama'] === 'Khatolik') echo ' selected="selected"'>Khatolik</option>
    <option value="Protestan"<?php if ($rows['agama'] === 'Protestan') echo ' selected="selected"'>Protestan</option>
    <option value="Hindu"<?php if ($rows['agama'] === 'Hindu') echo ' selected="selected"'>Hindu</option>
    <option value="Buddha"<?php if ($rows['agama'] === 'Buddha') echo ' selected="selected"'>Buddha</option>
    <option value="Lain-Lain"<?php if ($rows['agama'] === 'Lain-Lain') echo ' selected="selected"'>Lain-Lain</option>
</select>

Jeszcze lepszym sposobem byłoby umieszczenie wszystkich opcji w tablicy i przejście przez nie w pętli w celu wygenerowania opcji. Następnie możesz sprawdzać ich wartości, gdy je przeglądasz. Byłoby to mniej kodu i łatwiejsze w utrzymaniu.

<select name="agama" id="agama">
<?php
$agamas = array('Islam', 'Khatolik', 'Protestan', 'Hindu', 'Buddha', 'Lain-Lain');
foreach ($agamas as $agama) {
      $selected = ($rows['agama'] === $agama) ? ' selected="selected"' : '';
?>
    <option value="Islam"<?php echo $selected; ?>>Islam</option>
<?php
}
?>
</select>

Aby rozwiązać problem z obszarem tekstowym, <textarea> nie ma value atrybut. Musisz umieścić treść pomiędzy <textarea></textarea> tagi:

<textarea id="alamatkorban" rows="5" name="alamatkorban" cols="33"><?php echo $rows['alamatkorban'] ;?></textarea>


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Porównywanie wierszy w tabeli pod kątem różnic między polami

  2. node-mysql gdzie robi connection.end() idzie

  3. Jak wykonać wiele zapytań SQL w MySQL Workbench?

  4. Wyczyść pamięć podręczną zapytań MySQL bez restartowania serwera

  5. Odśwież stronę PHP co predefiniowane sekundy