Как выбрать выбранное значение из базы данных в PHP - PullRequest
0 голосов
/ 12 апреля 2019

Я пытаюсь сделать выбор, который поможет мне на моей странице "Редактировать пользователя".У меня есть этот код, но я не знаю, как его изменить, чтобы я мог загрузить значение, выбранное из базы данных.Этот код работает ...

<div class="form-group">
    <th><label for="text">Tipo Sanguineo:</label></th>
    <td><select class="form-control" id="sangue" name="tipo_sangue">
    <option value="O-" <?php if ($cl_tipo_sangue == "O-") echo 'selected';?> >O-</option>
    <option value="O+" <?php if ($cl_tipo_sangue == "O+") echo 'selected';?> >O+</option>
    <option value="A-" <?php if ($cl_tipo_sangue == "A-") echo 'selected';?> >A-</option>
    <option value="A+" <?php if ($cl_tipo_sangue == "A+") echo 'selected';?> >A+</option>
    <option value="B-" <?php if ($cl_tipo_sangue == "B-") echo 'selected';?> >B-</option>
    <option value="B+" <?php if ($cl_tipo_sangue == "B+") echo 'selected';?> >B+</option>
    <option value="AB-" <?php if ($cl_tipo_sangue == "AB-") echo 'selected';?> >AB-</option>
    <option value="AB+" <?php if ($cl_tipo_sangue == "AB+") echo 'selected';?> >AB+</option>
</select></td>
  </div>

Мне нужно сделать это с помощью этого кода:

<?php $dts = DBRead11(); ?>
<select name="diretor_turma" id="diretor_turma" required class="input-field4">
  <?php
    foreach($dts as $option) {
  ?>
    <option value="<?php echo $option['nome']; ?>"><?php echo $option['nome']; ?></option>
  <?php
    }
  ?>
</select>

Код, который мне нужно изменить, загружает значения из базы данныхна сайт, и я не уверен, как увидеть выбранный, если я загружаю их из базы данных.

Ответы [ 5 ]

0 голосов
/ 12 апреля 2019
<select name="diretor_turma" id="diretor_turma" required class="input-field4">
        <?php 
        foreach($dts as $option) {
            $select = (isset($cl_tipo_sangue) && $cl_tipo_sangue == $option['nome'])?"selected = 'selected'":"";?>
            <option value="<?php echo $option['nome']; ?>"  <?php echo $select; ?>><?php echo $option['nome']; ?></option>
        <?php } ?>
</select>
0 голосов
/ 12 апреля 2019

Вам нужно получить значение, сохраненное в базе данных, затем

 <?php
  $nome = $database_value;

?>
<select name="diretor_turma" id="diretor_turma" required class="input-field4">
  <?php
    foreach($dts as $option) {
  ?>
    <option value="<?php echo $option['nome']; ?>" <?php echo ($option['nome'] == $nome)?'selected':'' ?>><?php echo $option['nome']; ?></option>
  <?php
    }
  ?>
</select>
0 голосов
/ 12 апреля 2019

Шаги:

1) Возьмите массив, чтобы сохранить пары имен идентификаторов выпадающих опций.

2) Обведите его в теге <select> для <option> с.

3) Проверьте, является ли выбранный идентификатор текущим идентификатором итерации.

4) Если да, добавить атрибут selected="selected" к текущему <option>

И отметьте в цикле, если он выбран.

<?php
$bloodGroups = [
'O-' => 'O-',
'O+' => 'O+',
'A-' => 'A-',
'A+' => 'A+',
'B-' => 'B-',
'B+' => 'B+',
'AB-' => 'AB-',
'AB+' => 'AB+'
];
?>
<div class="form-group">
    <th><label for="text">Tipo Sanguineo:</label></th>
    <td><select class="form-control" id="sangue" name="tipo_sangue">
    <?php
    if (! empty($bloodGroups)) {
     foreach ($bloodGroups as $bgid => $bloodGroup) {
      $selected = ($cl_tipo_sangue == $bgid) ? 'selected="selected"' : '';
?>
<option value="<?php echo $bgid;?>" <?php echo $selected;?>><?php echo $bloodGroup;?></option>
<?php
     }
    }
    ?>
</select></td>
  </div>
0 голосов
/ 12 апреля 2019

Использование JavaScript

<?php $dts = DBRead11(); ?>
<select name="diretor_turma" id="diretor_turma" required class="input-field4">
  <?php
    foreach($dts as $option) {
  ?>
    <option value="<?php echo $option['nome']; ?>"><?php echo $option['nome']; ?></option>
  <?php
    }
  ?>
</select>
<script>
    document.querySelector('#diretor_turma').value = '<?= $cl_tipo_sangue ?>'
</script>
0 голосов
/ 12 апреля 2019

Попробуйте это,

<?php $dts = DBRead11(); ?>
<?php $cl_tipo_sangue = "B+"; ?>// here you need to add db value which you saved in DB
<select name="diretor_turma" id="diretor_turma" required class="input-field4">
  <?php
    foreach($dts as $option) {
  ?>
    <option value="<?php echo $option['nome']; ?>" <?php if ($cl_tipo_sangue == $option['nome']) { echo 'selected="selected"'; } ?> ><?php echo $option['nome']; ?></option>
  <?php
    }
  ?>
</select>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...