Модераторы: skyboy, MoLeX, Aliance, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Передать параметры из чекбоксов с переменными name 
:(
    Опции темы
yura2007
Дата 10.12.2007, 13:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 2
Регистрация: 10.12.2007

Репутация: нет
Всего: нет



Есть форма добавления компаний, в которой есть чекбоксы и названия категорий компаний и в каждой категории - список подкатегорий с чекбоксами. Категории и подкатегории выводятся из MYSQL. 
Данные о выбранных категориях передаются правильно, а с подкатегориями не получается.
Вот как выглядит кусок скрипта, который выводит нужный кусок формы с чекбоксом, где отображаются категории:

echo "<p><input type='checkbox' name='chcat[]' value='".$rowCat['id_category']."' onclick=\"swapTables(".$i.", ".$rowCat['id_category'].");\"".$ch_value."> ".$rowCat['name_category'];

Далее нужна выборка подкатегорий данной категории
for ( ........... или while ....


Вот часть скрипта, который "принимает" параметры категорий (:

for ($k=0; $k<count($_POST[chcat]); $k++)
{
if ($_POST[chcat][$k]) echo $_POST[chcat][$k];
}


Т.е., для категорий я для чекбоксов пишу name='chcat[]'. Как правильно присваивать в чекбоксах для покдатегорий 'name' и как их потом "принимать" скриптом? 


PM MAIL   Вверх
Anarki
Дата 10.12.2007, 13:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 326
Регистрация: 14.3.2005

Репутация: 7
Всего: 11



Можно сделать так(т.к. id_category разные)
Код

echo "<p><input type='checkbox' name='chcat[".$rowCat['id_category']."]' value='".$rowCat['id_category']."' onclick=\"swapTables(".$i.", ".$rowCat['id_category'].");\"".$ch_value."> ".$rowCat['name_category'];

А принимать так
Код

foreach ($_POST['chcat'] as $k=>$v)
{
   echo $k.'=>'.$v;
}

А потом вставлять данные в БД уже основываясь на отношениях в таблице с категорями если нужно, ориентируясь по $k .


--------------------
PM WWW   Вверх
yura2007
Дата 10.12.2007, 15:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 2
Регистрация: 10.12.2007

Репутация: нет
Всего: нет



Цитата(Anarki @ 10.12.2007,  13:39)
Можно сделать так(т.к. id_category разные)
Код

echo "<p><input type='checkbox' name='chcat[".$rowCat['id_category']."]' value='".$rowCat['id_category']."' onclick=\"swapTables(".$i.", ".$rowCat['id_category'].");\"".$ch_value."> ".$rowCat['name_category'];

А принимать так
Код

foreach ($_POST['chcat'] as $k=>$v)
{
   echo $k.'=>'.$v;
}

А потом вставлять данные в БД уже основываясь на отношениях в таблице с категорями если нужно, ориентируясь по $k .

Не понял, как быть с подкатегориями. Именно с категориями все понятно, они и у меня передаются корректно. Как "обозвать" в форме подкатегории и как принять скриптом значения именно "ПОДКАТЕГОРИЙ" определенонй категории?
PM MAIL   Вверх
Anarki
Дата 10.12.2007, 19:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 326
Регистрация: 14.3.2005

Репутация: 7
Всего: 11



Код

<form method="post">
Категория 1<br />
<input type="checkbox" name="chcat[название_категории][]" value="подкатегория1">подкатегория1<br />
<input type="checkbox" name="chcat[название_категории][]" value="подкатегория2">подкатегория2<br />
<input type="checkbox" name="chcat[название_категории][]" value="подкатегория3">подкатегория3<br />
<br />
Категория 2<br />
<input type="checkbox" name="chcat[название_категории2][]" value="подкатегория4">подкатегория4<br />
<input type="checkbox" name="chcat[название_категории2][]" value="подкатегория5">подкатегория5<br />
<input type="submit">
</form>
<?php
foreach ($_POST['chcat'] as $k=>$cat) {
    echo $k."<br>";
    foreach ($cat as $subcat) {
        echo $subcat."<br>";
    }
    echo "<br><br>";
}
?>



--------------------
PM WWW   Вверх
skyboy
Дата 10.12.2007, 21:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


неОпытный
****


Профиль
Группа: Модератор
Сообщений: 9820
Регистрация: 18.5.2006
Где: Днепропетровск

Репутация: 75
Всего: 260




M
skyboy
Не надо думать, что профессионалы, способные ответить на Ваш вопрос сидят только \"РНР: Для профи\". В этом разделе рассматриваются каверзные вопросы. И темы создавать - только если абсолютно уверены, что вопрос экстраординарен и абсолютно сложен.

Остальные вопросы размещайте согласно тематики или в \"PHP: Общие вопросы\".

PM MAIL   Вверх
DioNiR
Дата 10.12.2007, 21:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 130
Регистрация: 30.12.2006

Репутация: нет
Всего: нет



Код

print_r('<pre>');
print_r($_POST);
print_r('<pre>');    


Смотриш какие масивы $_POST есть.

foreach - хорошй цикл для вывода масивов.
--------------------
Думали это конец? Ха, всё только начинается.
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0802 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.