- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
на странице есть javascript который в зависимости от введённой пользователем инфы генерирует различные элементы - чекбоксы, текстовые поля, радиокнопки ...
как сделать чтобы php скрипт (на обработку которому отправляется эта форма) обрабатывал инфу в этих новых динамически созданных элементах ? (элементов может быть много)
как вообще принципиально подходить к такой задаче ? динамически созданные элементы - php скрипт
данные из динамически созданных элементов отправляются также как и из статических, т.е. ничего дополнительно не нужно делать, вопрос в том как они создаются, если есть ошибка, т.е. данные всеже не приходят то приведи пример скриптов и html кода.
меня просто интересует, если например было создано 50 чекбоксов, как php скрипт "узнает" точное количество этих чекбоксов
ТС
что ты хочешь получить на выходе, непонятно.
в обработчике все равно все переменные нужно учесть
Все элементы формы передают свои значения через GET или POST, надо просто пройтись циклом foreach
меня просто интересует, если например было создано 50 чекбоксов, как php скрипт "узнает" точное количество этих чекбоксов
php скрипт получает параметры вида name=value не более того, так что ему абсолютно всеравно сколько там будет таких параметров главное чтобы имена параметров не совпадали
если тебе нужно создать динамически к примеру 50 или даже 100 чекбоксов,
ты можеш пойти двумя путями, сгенерить для каждого уникально имя (name)
или загнать все данные в масив т.е.
1)<input type="checkbox" name="check_val[]">
2)<input type="checkbox" name="check_val[]">
3)<input type="checkbox" name="check_val[]">
...
50)<input type="checkbox" name="check_val[]">
...
100)<input type="checkbox" name="check_val[]">
в таком случае php получит не переменную check_val а массив check_val, с которым можно работать как с обычным php массивом
вот я про это и спрашиваю (количество чекбоксов не постоянно)
а может просто подсчитывать самим же javascript'ом количество сгенерированных элементов и передавать эту переменную php скрипту ?
вот я про это и спрашиваю (количество чекбоксов не постоянно)
а может просто подсчитывать самим же javascript'ом количество сгенерированных элементов и передавать эту переменную php скрипту ?
напиши пример того что ты собираешся дальше делать с этой переменной в php, и я напишу тебе правлиьное решение и скажу в чем ты не прав.
Зачем подсчитывать количество параметров яваскриптом и передавать это потом скрипту, я просто в толк не возьму, в чем смысл, если и без того все прекрасно можно обработать?
hrenoid, тебе bleed все ясно написал в этом сообщении... На выходе ты получишь массив check_val и делай с ним что хошь....
тут проблема в том, что массив для чекбоксов будет создан только для отмеченных, т.е. если было 50 чекбоксов а отметили 23, то массив в пхп будет из 23 элементов...
выход - в значение value для чекбокса записывать какое то уникальное значение (например ID какой нибудь), а не просто единички и по нему отличать отмеченные чекбоксы.
пример:
<input type=checkbox name=chk[] value=1>
<input type=checkbox name=chk[] value=2>
<input type=checkbox name=chk[] value=3>
<input type=checkbox name=chk[] value=4>
<input type=checkbox name=chk[] value=5>
<input type=checkbox name=chk[] value=6>
и если были отмечены например 2ой, 3й и 6ой чекбокс, то на выходе в пхп скрипте мы имеем массив $chk из трех элементов со значениями 2,3,6.
Кол-во чекбоксов можно определить только если на джаве писать в hidden переменную значение кол-ва чекбоксов на лету. т.е. добавил юзер чекбокс - значение переменной +1, убрал -1 и т.д. Тогда в пхп мы получим циферку, равную кол-ву созданных чекбоксов. Но она может отличаться от кол-ва отмеченных чекбоксов! Это надо понимать при обработке данных.
Да к чему извращения, правильно было сказано, просто каждому генерируемому элементу присваиваем уникальное имя. PHP-обработчик получит ВСЕ (и отмеченные и не отмеченные) данные в виде $имя_поля = значение поля.