Как установить флажки в «проверено» на основе значений в базе данных? - PullRequest
0 голосов
/ 01 декабря 2018

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

<div class="col-xs-12 col-sm-6">
   <input type="checkbox" value="Sulfa drugs" name="Allergic[]">  
   <label>Sulfa drugs</label> 

   <input type="checkbox" value="Aspirin" name="Allergic[]">                 
   <label>Aspirin</label>  

   <input type="checkbox" value="Latex" name="Allergic[]">&nbsp;                 
   <label>Latex</label> 
</div>

<?php
   $Allergic = implode(', ', ($_GET['Allergic']));
      $sql = "INSERT INTO history_table (allergic) VALUES ('$Allergic')";
?>

Этот код успешно работает.Данные были вставлены, если это проверено;в виде строки только в одном столбце.

столбец аллергический -> аспирин, латекс

Когда пользователь нажимает кнопку редактирования, отмеченные флажки должны быть заполнены / отмечены.

Я попробовал этот код, но он работает, только если у него есть только один проверенный, если его кратно, ничего не происходит

<input type="checkbox" value="Aspirin" name="Allergic[]" 
<?php echo ($row['allergic']=='Aspirin')?'checked':'' ?>>

<input type="checkbox" value="Latex" name="Allergic[]" 
<?php echo ($row['allergic']=='Latex')?'checked':'' ?>>

Надеюсь, кто-то может помочь мне, я работаю над этим почти день.Спасибо!

Ответы [ 2 ]

0 голосов
/ 01 декабря 2018

просто поместите свою логику в тег, а затем просмотрите «echo» на основе вашей логики, см. Код ниже

<input type="checkbox" style="width: 20px; height: 20px;"  
class="checkme" name="checkme[]" 
id="checkme_'.$sub_sub_gap_row['sub_sub_gap_id'].'" 
value="'.$sub_sub_gap_row['sub_sub_gap_id'].'"';?>
<?php if(isset($_GET['sub_sub_gap_id'])){
$selected_topic_id = $_GET['sub_sub_gap_id'];
if($selected_topic_id == $sub_sub_gap_row['sub_sub_gap_id'])
{
echo 'checked';
}
}
?>
<?php
echo  '>';
0 голосов
/ 01 декабря 2018

Пожалуйста, прочтите об очистке ваших входных данных, подготовленных операторов и, по крайней мере, об основах защиты вашего кода от атак SQL-инъекций.В настоящее время любой, кто знает URL вашего сайта, может получить полный контроль над всей вашей базой данных с помощью нескольких строк кода.

При этом вопрос, который у вас есть, легко решается:

in_array('Aspirin', explode(", ", $row['allergic'])) ? 'checked' : '';
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...