php - вставка значений нескольких вариантов флажков - PullRequest
3 голосов
/ 11 января 2009

сайт, на который я буду ссылаться, это

http://www.iaddesignandstudio.com/offline выберите вкладку цитаты

если лицо, заполнившее эту форму и установившее несколько флажков либо в цифре 1, либо в 3. как я могу вставить эти выбранные значения в базу данных, чтобы при извлечении информации, которую вводил или выбирал пользователь, я мог увидеть, какие флажки он / она выбрал?

Ответы [ 3 ]

4 голосов
/ 11 января 2009

Вы можете установить флажки в одном массиве после отправки формы, добавив [] в конце атрибута name, например:

<input type="checkbox" name="services[]" value="Podcasting Services" /> 
Podcasting Services      
<input type="checkbox" name="services[]" value="Local Search" />Local Search

Когда форма отправлена, ваша переменная $_POST['services'] будет массивом, содержащим все проверенные значения. например:

#var_dump($_POST['services']);
array(2) {
  [0]=>
  string(19) "Podcasting Services"
  [1]=>
  string(12) "Local Search"
}

Тогда вы можете делать с этим все что угодно, будь то отправка электронного письма или добавление полей в базу данных с использованием эфира foreach() или implode() для циклического перебора значений.

Надеюсь, это поможет!

2 голосов
/ 11 января 2009

Я бы имел отдельные поля в базе данных для них. Как и в вопросе 1, опубликованная форма может отправлять $ _POST ['admycomp'] и $ _POST ['provideresource'] как проверенные. Если это так, вставьте 1 в поле базы данных admycomp или provideresource. Таким образом, вы записали, какие поля они проверяли.

0 голосов
/ 01 августа 2011

Я бы посоветовал хранить значения в вашей базе данных, используя тип данных SET (например: http://dev.mysql.com/doc/refman/5.0/en/set.html).). Это позволит хранить каждое из значений флажков из группы флажков в одном столбце эффективным способом хранения. . Вероятно, вам потребуется использовать implode, как упомянуто выше, для создания SQL-запроса для вставки вашего набора.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...