Intereting Posts

Как идентификатор поля ввода может быть прочитан PHP?

У меня есть поле ввода 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 чтобы вытащить переменные.