Подтвердить что ты не робот

HTML Element Array, name= "something []" или name= "что-то"?

Я увидел что-то на этом сайте: Обработка массива элементов HTML-формы в JavaScript и PHP http://www.ajaxprojects.com/ajax/tutorialdetails.php?itemid=343

Он сказал о поместимости массива в свойство name и о том, как получить значение входной коллекции. например name="education[]"

Но, как я знаю, элемент ввода HTML готов к массиву с помощью name. На стороне клиента (GetElementsByName) или стороне сервера ($_POST в PHP или Request.Form в ASP.NET) например: name="education", так что отличается от или не с []?

4b9b3361

Ответ 1

PHP использует синтаксис квадратной скобки для преобразования входных данных формы в массив, поэтому, когда вы используете name="education[]", вы получите массив, когда вы это сделаете:

$educationValues = $_POST['education']; // Returns an array
print_r($educationValues); // Shows you all the values in the array

Итак, например:

<p><label>Please enter your most recent education<br>
    <input type="text" name="education[]">
</p>
<p><label>Please enter any previous education<br>
    <input type="text" name="education[]">
</p>
<p><label>Please enter any previous education<br>
    <input type="text" name="education[]">
</p>

Дает вам все введенные значения внутри массива $_POST['education'].

В JavaScript более эффективно получить элемент по id...

document.getElementById("education1");

Идентификатор не должен совпадать с именем:

<p><label>Please enter your most recent education<br>
   <input type="text" name="education[]" id="education1">
</p>

Ответ 2

если у вас есть флажки, вы можете передать массив проверенных значений.

<input type="checkbox" name="fruits[]" value="orange"/>
<input type="checkbox" name="fruits[]" value="apple"/>
<input type="checkbox" name="fruits[]" value="banana"/>

Также несколько выпадающих меню выберите

<select name="fruits[]" multiple>
    <option>apple</option>
    <option>orange</option>
    <option>pear</option>
</select>

Ответ 3

Это другое. если вы разместите эту форму:

<input type="text" name="education[]" value="1">
<input type="text" name="education[]" value="2">
<input type="text" name="education[]" value="3">

вы получите массив в PHP, в этом примере вы получите $_POST['education'] = [1, 2, 3].

если вы разместите эту форму без []:

<input type="text" name="education" value="1">
<input type="text" name="education" value="2">
<input type="text" name="education" value="3">

вы получите последнее значение, здесь вы получите $_POST['education'] = 3.