2013-07-03 4 views
-6

Прежде всего, я не могу изменить имя моего ввода. Я попытался назвать входы с массивом, как это:Получение значения после 2 ввода с тем же именем

<select name="info[]" class="select-block" id="2"> 

Но тогда CSS не работает.

Итак, как я могу получить почту от 2 ввода с тем же именем с PHP

<select name="info" class="select-block" id="2"> 

<select name="info" class="select-block" id="1"> 
+1

css не использует значение имени, поэтому im confused. первый вариант должен быть точным, уверен, что это не что-то еще. –

+0

Единственный способ - прочитать и разобрать 'php: // input' напрямую. – Barmar

+1

@ Dagon Я бы предположил, что у него есть CSS как 'select [name = info]' – Barmar

ответ

3

Просто использовать класс или идентификатор или что-то еще для CSS и настроить свои имена входного использование нотации массивов. Я буду беспокоиться о том, как ваша форма функционирует в первую очередь. Сделайте это правильно, а затем беспокоитесь о CSS, а не наоборот.

+0

+1. Просто хочу перезвонить здесь, идентификаторы должны быть уникальными. Поскольку у него уже есть 'class =" select-block "' attribute/value, он может просто использовать селектор '.select-block'. –

1

В CSS, если у вас есть select[name=info] затем заменить его .select-block и использовать info[] для имени

0

Quick'n'dirty путь, просто чтобы показать, что это возможно.

$qs = file_get_contents('php://input'); 

$_POST = array(); 

foreach(explode('&', $qs) as $varval){ 
    list($var, $val) = explode('=', $varval, 2); 
    if (isset($_POST[$var])) { 
     if (!is_array($_POST[$var])) { 
      $_POST[$var] = array($_POST[$var]); 
     } 
     $_POST[$var][] = $val; 
    } else { 
     $_POST[$var] = $val; 
    } 
} 

Для этого нужна полировка, такая как urldecoding. Конечно, это также связано с ограничениями: когда форма отправляется с enctype multipart (для загрузки файлов) php://input недоступен. Также это не волнует массивы, поэтому, если у вас есть какой-то элемент формы с именем вроде info[], он не будет правильно разбираться. Он также может быть исправлен, но лично я бы изменил свой HTML/CSS

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