массив в базу

Vadimka

Новичок
массив в базу

имеется таблица с 6 полями, в которую необходимо вставить массив:
Array ( [lookfor] => Array ( [0] => 1 [1] => 3 [2] => 5 [3] => 6 )
чтобы 1 элемент массива был вставлен в 1 поле, второй во второе и т.д.
Каким образом это сделать?
 

Demiurg

Guest
ты знаешь каким должен быть результирующий запрос ?
 

Vadimka

Новичок
вопрос не в том как весь массив вставить в одно поле, а как каждый элемент вставить в каждое поле..? вроде бы так правильнее?
 

Demiurg

Guest
массив не надо "вставлять" в поле.
Опиши задачу поподробнее.
 

Falc

Новичок
Vadimka
Еще раз сходи по ссылке и посмотри как вставлять в несколько полей.
 

Vadimka

Новичок
есть форма:
<input type="checkbox" name="lookfor[]" value="1">
<input type="checkbox" name="lookfor[]" value="2">
<input type="checkbox" name="lookfor[]" value="3">
<input type="checkbox" name="lookfor[]" value="4">
...
результат 1 чекбокса надо вставить в 1 поле таблицы .. и т.д.

-~{}~ 23.08.04 16:12:

как получить в переменную результат 1 чекбокса, чтобы потом вставить в базу ?
 

Demiurg

Guest
что за таблица и какой она имеет смысл и какие связи имеет ?
 

fixxxer

К.О.
Партнер клуба
Что-то мне подсказывает, что на самом-то деле нужно вставить 4 строки. А перед этим почитать про связь многие-ко-многим, чтобы понять, почему делать надо именно так.
 

Vadimka

Новичок
CREATE TABLE `love_lookfor` (
`id` smallint(6) NOT NULL auto_increment,
`l1` tinyint(1) NOT NULL default '0',
`l2` tinyint(1) NOT NULL default '0',
`l3` tinyint(1) NOT NULL default '0',
`l4` tinyint(1) NOT NULL default '0',
`l5` tinyint(1) NOT NULL default '0',
`l6` tinyint(1) NOT NULL default '0',
) TYPE=MyISAM AUTO_INCREMENT=4 ;
имеет связь с таблицей love_user по условию love_user.id=love_lookfor.id

-~{}~ 23.08.04 16:21:

Автор оригинала: fixxxer
Что-то мне подсказывает, что на самом-то деле нужно вставить 4 строки. А перед этим почитать про связь многие-ко-многим, чтобы понять, почему делать надо именно так.
... иам же троеточие стоит ... (после 4 строк)
 

Vadimka

Новичок
поля в которые вставляются результаты чекбоксов, первого чекбокса в - l1, второго в - l2, и т.д.
 

Demiurg

Guest
причем тут чекбоксы ?
смысловую нагрузку они имеют какоую-нибудь ?
 

Vadimka

Новичок
да имеют, включен чекбокс - заносим в базу 1, если выключен - вставляем ноль или др. цифру отличную от 1.
 

Demiurg

Guest
еще раз говорю, чекбоксы тут непричем ты в базу не чекбоксы вставляешь а информацию. Например, если в таблице users есть поле name, то в нем храниится имя пользователя а не текст из формы. Попробуй ответить еще раз.
 

Vadimka

Новичок
хорошо, давай попробуем по другому, юзер заполняет форму:
Я ищу:
<input type="checkbox" name="lookfor[]" value="1"> - Парня
<input type="checkbox" name="lookfor[]" value="3"> - Девушку
<input type="checkbox" name="lookfor[]" value="2"> - Транс
и выбирает три поля, как правильно сохранить эти данные в таблице, для дальнейшего поиска на сайте по условию:
Ищу девушку ?
 

fixxxer

К.О.
Партнер клуба
Троеточия говоришь. Ну хорошо, замени в моем посте 4 на 6 или сколько их там у тебя. Суть не меняется.
В данный момент очевидно, что у тебя неверно спроектирована БД.
 

Demiurg

Guest
ты можешь абстрагироваться от чекбоксов ?
считай, что у тебя их вообще нет. Базы данных надо проектировать так, что бы они не зависили от html. Из твоих объяснений я могу пока сказать, что тебе возможно нужно использовать тип set вместо твоих 6 полей. Но может быть нужно еще делать одну табличку и связываться с ней многие-ко-многим
 

Vadimka

Новичок
ну тогда я незнаю как сделать хтмл, чтобы база не зависела от хтмл, и юзер имел возможность мог выбрать кого ищет: парня, девушку, транс..?

-~{}~ 23.08.04 16:57:

табличку с полем SET сделать не вопрос, а как потом производить поиск по этому полю?
 

Demiurg

Guest
и юзеры тут не причем ... база должна быть самодостаточна (по возможности) то есть там должны лежать данные и при этом структура её должна быть такой, что бы нельзя было добавить туда заведомо ложных данных. Далее с базой ты работаешь sql-запросами. То есть надо найти таких то пользователей составляешь определенный запрос. Надо добавить тоже запрос. А уже на основе этих запросов ты делаешь интерфейс на html. Я не говорю, что надо сначала полностью сделать структуру базы, потом выписать все запросы на все действия, потом только начинать писать скрипты. Но в голове у тебя все должно быть разложено по полочкам за это отвечает база, за это скрипты, а за то html.

>табличку с полем SET сделать не вопрос, а как потом производить поиск по этому полю?
в мануале не написано ?
 
Сверху