Я пытаюсь сохранить данные из опубликованной веб-формы в базе данных MySQL.Использование разделителей при хранении данных флажка в базах данных MySQL
Как правило, с помощью простого текста или ввода номера, каждый вход имеет идентификатор, который относится к конкретному quesiton, и как таковой каждый ответ создает новую запись в таблице «ответы»
например,
<input type="text" value="hello" id="qid_101" name="q_101">
Когда это опубликовано, я использую php, чтобы вырезать номер qid и сохранить его против этого значения.
Однако когда группа флажков имеет данные размещены, результат представляет собой массив, т.е.
<div class="checkboxes">
<div>
<input type="checkbox" value="A " name="checkboxes[]" />
<span class="inline">a</span>
</div>
<div>
<input type="checkbox" value="B" name="checkboxes[]" />
<span class="inline">b</span>
</div>
<div>
<input type="checkbox" value="C" name="checkboxes[]" />
<span class="inline">c</span>
</div>
</div>
дает мне массив с именем флажков, которые я не могу непосредственно хранить в базе данных.
Following the advise of others on SO Я планирую взорвать массив в строку и историю, которые затем, когда ссылаются на нее, снова взорвутся.
У меня есть два вопроса:
1) Это чувствует, как плохая практика для меня, потому что это денормализации мои данные, но я не могу придумать другой способ сделать это (ответы хранятся уникальные по пользователь и идентификатор вопроса - поэтому сохранение каждого значения флажка по одному и тому же идентификатору вопроса приведет к поломке других частей сайта)
2) Что такое хороший разделитель для использования при иммобилизации массива - есть ли список символов, которые я должен использовать избегать MySQL, чтобы избежать путаницы?
Да, мне нужно узнать больше о таблицах JOIN, поскольку я в настоящее время их не использую, и я подозреваю, что они являются ответом, который я ищу. Спасибо за информацию о serialize() - она хранит и массиву в виде строки? – Gideon