2017-01-12 3 views
-1

У меня есть форма с большим количеством полей и мне нужны данные формы, которые должны быть в одном массиве.У меня есть форма с большим количеством полей в и что мне нужно, данные формы должны быть в одном массиве

Например: Давайте предположим, что имена поля формы являются name, username, password и т.д., и мне нужно, чтобы получить эти все поля внутри массива с именем $user любит это:

$user = array('name' => 'foo', 'password' => 'bar', ...); 

Так я даю поле формы names как $user['name'], но отображено сообщение с кодом пользователя:

Это имя содержит незаконные символы. Имена должны начинаться с буквы, цифры или подчеркивания и содержать только буквы, цифры, цифры, символы подчеркивания («_»), дефисы («-») и двоеточия («:»).

Может ли кто-нибудь помочь мне разобраться?

+0

Показать ** точную ошибку ** в вашем вопросе. «Ошибки вроде» не очень полезны. Сам PHP не бросает эти ошибки, поэтому я предполагаю, что это symfony .... –

+0

@cale_b да это сообщение показано с symfony –

+0

Похоже, вы хотите это: http://symfony.com/doc/current/reference /forms/types/collection.html –

ответ

0

Имя ваши элементы, как это:

user[name] 
user[password] 

Не используйте $ не используйте '.

$ предназначен для переменных PHP, а не элементов HTML-формы.

Включая кавычки в названии, просто сделайте ключи на вашем массиве $ _POST выглядящими уродливыми, поэтому не используйте их (видимо, симфония не позволит вам в любом случае).

Уведомление без кавычек:

<input type="text" name="user[name]"/> 
<input type="text" name="user[password]"/> 

array(1) { 
    ["user"]=> 
    array(2) { 
    ["name"]=> 
    string(11) "Super Admin" 
    ["password"]=> 
    string(8) "PaSsWoRd" 
    } 
} 

с одинарными кавычками:

<input type="text" name="user['name']"/> 
<input type="text" name="user['password']"/> 

array(1) { 
    ["user"]=> 
    array(2) { 
    ["\'name\'"]=> 
    string(11) "Super Admin" 
    ["\'password\'"]=> 
    string(8) "PaSsWoRd" 
    } 
} 

Посмотрите, как обратные косые включены, чтобы избежать кавычки ... некрасиво.

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