2013-04-05 2 views
0

Что я хочу сделать это,Хотите получить значение текстовых полей

У меня есть код, который генерирует 2 текстовых полей на события нажатия кнопки througn АЯКС так много времени, как при нажатии кнопок. Итак, нажав кнопку submit, как я могу определить текстовые поля и getvalue каждого текстового поля.

Поэтому я хочу дать динамическое имя для каждого текстового поля. И в форме submit я хочу получить значение каждого текстового поля.

я могу сделать что-то вроде этого

<input type="text" name="fname[]" value="Hello" /> 
<input type="text" name="fname[]" value="World" /> 

и получить значение по представить

<?php 
if(isset($_POST['txtfname[]'])){ 
    echo $_POST['txtfname[0]']; 

} 
?> 

Может кто-нибудь помочь?

+0

Да, вы можете сделать то же самое –

+0

Не забудьте проверить [массив текстового поля Сообщения в PHP] (http://stackoverflow.com/вопросы/10279507/пост-текст-бокс-массив-в-PHP) ... –

ответ

1

Значения указаны в документе $_POST['fname'].

Значение:

$_POST['fname'][0] -> "Здравствуйте"

$_POST['fname'][1] -> "Мир"

0

При создании текстового поля, как вы сказали ajax, укажите имя созданной кнопки как массив, как вы сказали. И после отправки формы, если вы print_r($_POST), вы можете увидеть опубликованный массив, который содержит все значения элементы, представленные в форме.

0

Это может быть возможно, но после, вероятно, лучший способ сделать это. При создании каждого из входов, чтобы их имена в следующем формате: <input type="text" name="fname_0" value="value" /> где 0 это число, вы можете использовать этот код в цикле через каждый из них и эхо значение:

$prefix = "fname_"; 
foreach ($_POST as $post) { 
    if (strncmp($post, $prefix, strlen($prefix))) { 
     echo $post; 
    } 
} 

Редактировать
с другой стороны, если вы форматируете входы как <input type="text" name="fname" value="value" />, они будут доступны через $_POST['fname'] как массив, так что вы можете повторить каждый из них, как это (в вашем PHP коде):

foreach ($_POST['fname'] as $fname) { 
    echo $fname; 
} 
0

в вашем HTML для каждого у наши элементы поставили

<input type="text" name="fname[]" value="value" /> 

Где value это значение каждого текстового поля. Это поместит все значения каждого текстового поля внутри одного массива. В коде сбросить значения всех входов, вы можете поставить:

<?php 
if(isset($_POST['fname'])){ 
    $array = $_POST['fname']; 
    var_dump($array) 

} 
?> 
Смежные вопросы