Mysql
 sql >> Base de données >  >> RDS >> Mysql

PHP et MySQL - Comment afficher la valeur sélectionnée dans le menu déroulant

Votre plus gros problème est que vous n'accédez pas correctement aux valeurs de votre base de données. mysql_fetch_array() ne renvoie pas d'objet. Il renvoie un tableau. Vous utilisez donc une syntaxe de tableau ($rows['key'] ) pas la syntaxe d'objet ($rows->key ).

Vérifiez simplement si la valeur de l'option correspond à la valeur de $rows['agama'] . Si oui, ajoutez le selected attribut.

<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>

Une meilleure façon serait de mettre toutes vos options dans un tableau et de les parcourir en boucle pour générer vos options. Ensuite, vous pouvez vérifier leurs valeurs au fur et à mesure que vous les parcourez. Ce serait moins de code et plus facile à maintenir.

<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>

Pour résoudre votre problème de zone de texte, <textarea> n'a pas de value attribut. Vous devez placer le contenu entre les <textarea></textarea> balises :

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