Intereting Posts
Доктрина: запрос только там, где отношения не существуют? Лучший PHP-кодер file_get_contents или readfile для отображения образа файловой системы Выпадающий список HTML с полем ввода пользователя php javascript java апплет смарт-карты подписание pdf на сервере Используйте Yii findAll, чтобы вернуть модель со всеми свойствами Как запустить скрипт PHP с помощью задачи расписания Windows? Как я могу использовать несколько типов содержимого заголовков PHP на одной странице? Это возможно? Вопросительный знак равен, не работает на php Ошибка выражения Isset как автоматически копировать весь каталог в виде эскизов, используя phpthumb (или некоторую другую библиотеку) Как предотвратить множественные логины на веб-сайте PHP Войдите в Gmail Inbox с помощью Curl? Включение файлов по относительной траектории API Vimeo: потоковая загрузка с использованием HTTP PUT и загрузки jQuery для синейма

как вставить запись в базу данных с помощью флажка другой опции в php?

У меня есть такая форма:

введите описание изображения здесь

Я действительно запутался, как все это сделать в базе данных. У меня такой код:

echo "<form action='insert.php'>"; $data = array("rice","fish","pizza","other"); for($i=1; $i<5; $i++){ echo "<input type='text' name='food[]' value='$i' class='food'><label>$data[$i]</label>"; } echo "<input type='submit' value='ok'>"; echo "</form>"; <script> $(".food").change(function () { if (this.checked && this.value=='4') { $(this).next("label").after("<p id='other-text'><input placeholder='please enter food' type='text' name='otherfood[]' /></p>") } else { $("#other-text").remove(); } }); </script> 

база данных:

 order id id_food other ---------------------- 1 4 soup 

Можете ли вы мне помочь, как все это сделать в тактике базы данных?

 order id id_food other ---------------------- 1 4 soup 

Я не думаю, что это хорошая идея для хранения данных. Если вам действительно нужно хранить id_food = 4 (который относится к 'other' ) вместе с 'soup' , я предлагаю настроить таблицу поиска продуктов следующим образом:

 food id name is_other ---------------------- 1 pizza 0 5 soup 1 

И изменив таблицу заказов следующим образом

 order id id_food other_id ---------------------- 1 4 5 

Таким образом, вы можете сохранить целостность данных и поддерживать оптимальный размер таблицы, проверяя, существует ли текст в other textbox в таблице food и если он выбирает id_food и вставляет food_id в таблицу order .

И вы можете по-прежнему фильтровать флажки со следующим условием, если вы не хотите, чтобы введенные вручную data были видимыми в форме

 select id,name from food where is_other = 0 

Или

Поскольку у вас теперь есть soup данных в таблице food , вы можете перечислить его вместе с другими вариантами питания в качестве checkbox .

Это один из вариантов, есть разные подходы, которые, я уверен, будут предоставлены другими пользователями.