У меня есть фрагмент кода php, упомянутый ниже
<?php $query = "SELECT * FROM Qualification"; $result = mysqli_query($dbcon,$query); while($row=mysqli_fetch_array($result)){ ?> <input type='checkbox' value='"<?php $row['Id'] ?> "' name='Qualification[]' /><?php $row['Description'] ?><br> <?php } ?>
Этот вышеприведенный код используется для отображения всей квалификации из баз данных.
Выход будет
[] Teacher [] Engineer [] Doctor [] Banker etc..
Теперь скажите, что я проверил 3 флажка Учителя, инженера, доктора.
foreach($_POST['Qualification'] as $Qualification) { $AllQualification .=$Qualification.","; } $AllQualification ="1,2,3,"
Поэтому я объединяю идентификатор значений в строку и сохраняю ее в базе данных как 1,2,3,
Теперь мне нужно привязать данные снова к этому флажку. Когда я извлекаю выбранную квалификацию, она дает 1,2,3,
Теперь как привязать выбранные значения к флажку.
Результат, который мне нужен, это учитель, инженер, доктор должен быть проверен, а банкир должен быть снят.
Любая помощь оценивается.
Вы можете сделать это
взорвать строку в массив
$AllQualification ="1,2,3,"; $selected = explode(",", $AllQualification); $selected = array_filter($selected); //print_r($selected);
используя in_array, вы можете проверить, проверено ли оно
<?php $query = "SELECT * FROM Qualification"; $result = mysqli_query($dbcon,$query); while($row=mysqli_fetch_array($result)){ ?> <input type='checkbox' value='"<?php $row['Id'] ?> "' name='Qualification[]' <?php if (in_array($row['Id'], $selected)){ echo "checked" } ?> /><?php $row['Description'] ?><br> <?php } ?>
в<?php $query = "SELECT * FROM Qualification"; $result = mysqli_query($dbcon,$query); while($row=mysqli_fetch_array($result)){ ?> <input type='checkbox' value='"<?php $row['Id'] ?> "' name='Qualification[]' <?php if (in_array($row['Id'], $selected)){ echo "checked" } ?> /><?php $row['Description'] ?><br> <?php } ?>
проверьте эту ссылку http://sandbox.onlinephpfunctions.com/code/ae6bbfc6bd0ad84ddceadeac608fa6747de41274