У меня есть данные, хранящиеся в базе данных в формате varchar, например, например: S, M, L, XL, у меня есть флажки для них на моей странице php. Можно ли получить их из базы данных и показать уже отмеченные флажки в php / html. (Если указано только значение XL, на странице html / php должен быть установлен только флажок XL)






Один из способов сделать это:
- вы получаете значения из базы данных с помощью SQL в PHP
- Динамически создавать HTML-код флажка, используя полученные значения
Почему это отклонено? Я знаю, что это очень элементарный вопрос, но ответ неправильный, причина должна быть там ..
Я сделал это в своем проекте и не рекомендую.
Вы можете сохранить в PHP массив значений enum, а затем использовать его для создания формы. Выбор данных из базы данных не отличается от любого другого запроса. Затем вы можете сравнить значение из базы данных со значением в вашем массиве.
define('SIZES', ['S', 'M', 'L', 'XL']);
$value_from_db = 'L'; // Fetched from the database
echo '<form>';
foreach (SIZES as $size) {
if ($value_from_db == $size) {
echo '<label><input type = "checkbox" value = "' . $size . '" name = "size" checked />' . $size . '</label>';
} else {
echo '<label><input type = "checkbox" value = "' . $size . '" name = "size" />' . $size . '</label>';
}
}
Лучшим вариантом было бы хранить эти значения в справочной таблице в базе данных, а не в PHP. Затем вы можете обеспечить ссылочную целостность. Вместо того, чтобы зацикливаться на массиве, вы должны зацикливаться на значениях из справочной таблицы.
Пожалуйста, предоставьте минимальный, полный и поддающийся проверке пример (MCVE).