Объясните как правильно сделать есть такой кусочек формы <input name="lookfor" value="boy" type="checkbox" class="checkbox" />с парнем <input name="lookfor" value="girl" type="checkbox" class="checkbox" />с девушкой при регистрации можно выбрать каждый checkbox по отдельности или вместе... как правильно занести эти значения в базу в одну ячейку если выбраны два checkbox? при этом что бы name чейбоксов были одинаковыми? я читал что можно сделать с помощью типа поля SET, но до конца разобраться не могу. я создал тип поля тип поля SET('boy',girl') что бы можно было получить 3 варианта значений: 1. girl 2. boy 3. girl,boy если выбираешь или тот checkbox или тот в отдельности втавляется правильное значение, а если оба сразу, то только одно "girl" может кто знает как это правильно делать?
Elkaz, насколько я понял что нужно дописать 'boy',girl','both' - но результат тотже. заносится только одно значение, даже если выбраны два чейбокса
igordata, неужели просто нельзя написать если знаешь... я с эти м типом поля вообще не сталкивался, и так уже голову себе сломал
serj011 <input name="lookfor[]" value="boy" type="checkbox" class="checkbox" />с парнем <input name="lookfor[]" value="girl" type="checkbox" class="checkbox" />с девушкой PHP: <?php if (isset ($_POST['lookfor']) && count ($_POST['lookfor']) == 2){ $lookfor = 'both'; // чувак ищет обоих. } ?>
Elkaz, извените уже конечно что туплю... я в обработчик добавил этот код, если выбраны оба чейбокса, работает, заносится 'both'. а по отдельности не работает... может что нужно еще дописать?
serj011 Ну само собой, я же дал не решение, а просто показал один из вариантов. Просто делаете так: PHP: <?php if (...){ ... } else { $lookfor = isset ($_POST['lookfor'][0]) ? $_POST['lookfor'][0] : 'значение по умолчанию'; // girl или boy; }
Наверное так все таки, ведь если будет выбран один из вариантов, то isset($_POST['lookfor'][0])==true, а isset($_POST['lookfor'][0])==false HTML: <input name="lookfor[boy]" value="boy" type="checkbox" class="checkbox" />с парнем <input name="lookfor[girl]" value="girl" type="checkbox" class="checkbox" />с девушкой
Elkaz, спасибо получилось как то хотя в коде я толком не разобрался... вот код: if (isset ($_POST['lifepriority']) && count ($_POST['lifepriority']) == '2'){ $lifepriority = '3'; } else { $lifepriority = isset ($_POST['lifepriority'][0]) ? $_POST['lifepriority'][0] : '1'; // girl или boy; } получаеться что если выбран парень заносится "1", если девушка "2", если оба "3"... я читал что значения в поле SET заносятся подругому!!! например если выбран и парень и девушка заносится не "3"а ('1','2') если таких чейбоксов 10 например как тогда делать???
занесите просто все значения через запятую, никакие SET'ы не понадобятся, немного не ясно с выборкой будет, но придумать что-то можно, если конечно значений много. а еще можно как суммы это представлять, т.е. 1 = boys, 2 = girls, 4 = dogs, 7 = all, 5 = boys + dogs , 3 = boys + girls, 6 = girls + dogs. Тогда при выборке надо будет делать [sql]SELECT * FROM table WHERE field & $value = $value[/sql] что-то в этом роде