2012-01-05 3 views
0

приложение вид корзины покупок. Я загружаюсь из источника ajax (любой источник был бы тем же xD) и неизвестным количеством сервисов (неизвестно cuz 'они растут в числе в базе данных). они представлены флажком, который указывает, хотите ли вы эту услугу, затем отображает 2 входа один с отключенной ценой, а другой - количество.php пытается получить неизвестное количество входов

проблема заключается в том, как отправить их все в php для процесса (общий расчет цены и вставка базы данных). Я использовал ввод имени атрибута с кронштейнами для нескольких выбирает

<select name="something[]">... ...</select> 

Я хотел бы знать, если есть способ, чтобы добиться чего-то подобного, но с входами. или, может быть, некоторые фантазии JQuery плагин в виду mooitems.- здесь страница, чтобы увидеть мой полный провал попытки :(

http://www.micontrol.cl/~mvargas/wordpress/wp-transatacama/reservas-rapidas/form-reservas-pal.php

(вы должны сначала выбрать Viaje затем в CATEGORIA, связанные со службой будут отображаться сейчас и, наконец, настроить qtty для взрослых, чтобы иметь возможность отправить форму ... извините, что поток был требованием: /).

, пожалуйста, помогите мне с некоторым руководством, ничего: D thx заблаговременно.

+1

Да, это работает и для элементов ввода. Никаких изменений не требуется. – goat

ответ

0

Почему бы не посмотреть на jquery serialize()?

http://api.jquery.com/serialize/

, а затем просто перебрать $ _POST [] или $ _GET [] в PHP в зависимости от способа вашего AJAX вызова.

Это также может быть полезно:

http://www.php.net/manual/en/reserved.variables.post.php#84813

+0

Позвольте мне проверить, может быть, это поможет.- думал, что я искал ответ JS, это похоже на невозможное:/ –

+0

Вы можете отправить их, как хотите ... Вам не нужно использовать js, если вы фактически отправляете форму, а не используете ajax.$ _POST или $ _GET будут содержать все успешные элементы управления с атрибутами имени, которые были в форме при ее отправке. Вторая ссылка показывает, как создавать переменные, используя ключи и значения из вашего массива в php. – nobody

+0

проблема в том, что службы имеют одно и то же имя: /. Я динамически создавал их из php, поэтому мои параметры давали им имя (то же самое для всех), а не называли их или динамически создавали пронумерованное имя, которое ничего не значит: /. вот почему я спрашивал, есть ли способ сделать что-то вроде [] в выборе нескольких –

1

Итак, если у вас есть несколько элементов, которые вы хотите отправить на сервер, вы должны создать свой HTML, чтобы выглядеть следующим образом (динамический вещи показаны в квадратных скобках []):

<input type="checkbox" name="service_[service_id]" value="[service_id]"/> [service_name]<br/> 
<input type="text" value="[price]" disabled/> 
<input type="text" name="quantity_[service_id]"/> 

Вы должны построить имена для входов, состоящих из префикса (например, службы или количество) и суффикса, который является идентификатором для обслуживания, таким образом, вы сможет проверить f или их в PHP.

Теперь в PHP вы могли бы сделать что-то вроде этого:

<? 
    $prefix = "service_"; 
    foreach ($_POST as $name => $value) 
    { 
     if (substr($name, 0, strlen(prefix)) == $prefix) 
     { 
      $serviceId = $value; 
      $quantity = $_POST[ "quantity_$serviceId" ]; 
     } 
    } 
?> 

Здесь вы можете увидеть, я создал цикл по всем данным POST пытается найти имена полей, которые начинаются с префикса service_ и как только я нахожу его, я знаю, что его значение - это идентификатор службы. Затем я могу использовать идентификатор службы, чтобы найти поле quantity_ [service_id], которое было отправлено вместе с выбранным идентификатором службы.

Надеюсь, это поможет ...

+0

. Я думаю, что это способ сделать это, но немного грязный –

Смежные вопросы