У меня есть поле ввода HTML, и у меня есть каждое поле ввода, указанное с некоторым id, теперь как я могу использовать этот идентификатор поля ввода для идентификации поля.
Пример:
<input type='text' id='float' name='attributename' value='' maxlength='30'/>
Мне нужно проверить идентификатор поля ввода для float, а затем ввести значение поля ввода в db в конкретном поле.
Пожалуйста, помогите мне.
Это зависит от того, какой метод вы используете для передачи данных (указанный атрибутом method
элемента form
).
Например:
<form method="POST"> <input type='text' id='float' name='attributename' value='' maxlength='30'/> <input type="submit" /> </form>
вы можете получить доступ к данным на PHP через $_POST['attributename']
при $_POST['attributename']
формы. $_POST
– ассоциативный массив, который передает данные по запросу POST.
Примечание . name
входного элемента является важным свойством, а не идентификатором. Идентификатор не передается на сервер, он играет только роль в DOM. На сервер отправляется только name
и value
. Поэтому, если вы, вероятно, захотите установить name="float"
.
Дополнительная информация: Переменные из внешних источников . Вы также можете прочитать о $_POST
и $_GET
(GET – это другой метод, который используется для отправки данных по URL-адресу).
Вы не можете. При отправке данных на сервер используется атрибут name
. id
имеет ничего общего с PHP.
Когда PHP получает данные с помощью GET или POST, он не знает идентификатор ввода, связанного с данным фрагментом данных. Однако вы знаете имя.
Самый простой подход заключается в том, чтобы совместить имя и идентификатор или получить идентификатор от имени, например:
name: float id: float_id name: address id: address_id
Причина в том, что DOM использует идентификатор, но он не имеет никакого отношения к выполнению PHP. PHP получает только имя. Поскольку вы контролируете как серверный, так и клиентский код, вы можете определить, какой будет идентификатор, выбрав соглашение об именах, как я предложил выше.
Когда вы отправляете форму, вы должны использовать атрибут input name=""
чтобы вывести значение из:
$_POST['attributename'];
Прежде всего, id
должен быть уникальным для каждого элемента.
Вы можете суффикс имени поля с помощью []
чтобы создать массив, чтобы вы могли обрабатывать их позже, например:
<input type='text' id='float1' name='attributename[]' value='' maxlength='30'/> <input type='text' id='float2' name='attributename[]' value='' maxlength='30'/> <input type='text' id='float3' name='attributename[]' value='' maxlength='30'/>
Теперь из PHP вы можете использовать foreach
для доступа к каждому значению поля следующим образом:
foreach($_POST['attributename'] as $value){ echo $value . '<br>'; }
Если это одно поле, вы можете получить к нему доступ только по его имени:
echo $_POST['attributename'];
В PHP у вас есть только доступ к name
ввода, после того как форма была отправлена с использованием method="get"
или method="post"
, через $_GET['attributename']
и $_POST['attributename']
, соответственно.
Возможно, вы хотите настроить таргетинг на поле с помощью javascript; вы можете сделать это, используя document.getElementById('float')
.
Да, deceze лучше всего.
В принципе, все в PHP (и все веб-программирование) требует пары ключ = значение. Итак, если у вас нет ключа, вы, в свою очередь, не имеете никакой ценности. Если элемент формы имеет только идентификатор и NAME, то переменная, передаваемая в PHP, не будет существовать.
Лучшим способом тестирования является проверка вашего элемента HTML-формы с помощью «GET» вместо «POST». Таким образом, вы увидите пары key = value в адресной строке, когда форма передается методу посредством Действие. Все, что вам нужно сделать, это использовать $_GET
вместо $_POST
чтобы вытащить переменные.