2010-11-23 4 views
3

можно ли прочитать атрибут из элемента формы?php: читать атрибут из элемента формы

Я получил это:

<input class="number required" min="1250" max="999999999" id="insert_counter1" name="my_counter" value="" type="text"> 

После представить я могу получить доступ к значению. Но есть ли способ добраться до других атрибутов, таких как «min» или «max»?

Прямо сейчас у меня есть скрытое поле ввода только с именем my_counter_min, где хранится атрибут min. Я не знаю, работает ли это рабочий раунд, или если это действительно единственный способ сделать это.

Br. Андерс

ОБНОВЛЕНО на основе ответов ниже:

Спасибо за хорошие отзывы. Когда я прочитал ответы, есть три хороших решения с некоторыми плюсами и минусами.

  • Хранить значение в виде ввода = скрыто. Легко сделать, но можно подделать
  • Использовать анализатор. Требуется больше времени для кода, но исходное значение будет получено через новый веб-запрос. Так что никаких подделок
  • Хранить значение в БД. Если форма связана с конкретным rcord в БД, то сохранение дополнительных значений может иметь хороший смысл и не будет стоить большого количества усилий по кодированию, если другие значения должны входить и выходить из БД allready (просто добавьте значение).

У меня есть три разных ответа на мой вопрос. Самый быстрый ответ отмечен правильно, хотя есть больше, чем это одно решение.

BR. Anders

ответ

3

Я не знаю, работает ли это рабочий раунд или если это на самом деле единственный способ это сделать.

Это единственный хороший способ сделать это. Другие атрибуты элементов формы не передаются в запросе.

4

Нет. Только имя и значение достигнут сервера, поэтому вам понадобится обходной путь (например, тот, который вы описали).

3

Они не передаются, но вы можете загрузить страницу с помощью an HTML parser и извлечь значения.

Большой вопрос: почему вы хотите это сделать? Если вы хотите использовать min/max, чтобы убедиться, что представленное значение находится в этом диапазоне, вы должны жестко закодировать эти значения на сервере, вместо того чтобы полагаться на то, чтобы получить их от клиентов.

Передача этого диапазона в качестве скрытого поля бессмысленна, поскольку его легко подделать. Потянув их парсером, убедитесь, что они не подделаны, но добавляет накладные расходы второго запроса.

+0

Я тоже думал об этом, но в большинстве случаев это не очень хорошо *. IMO – 2010-11-23 13:29:24

2

Интересно. Однажды у меня была одна и та же проблема, и я исправил ее так же, как и вы. Никогда не смотрел на проблему.

Одна вещь, о которой я могу думать, это хранить значения в базе данных, чтобы вы могли: 1. Использовать их в качестве входной переменной. 2. Получите доступ к нему в любое время.

Ps: Первоначально это был комментарий, но видя, что вы принимаете альтернативы.

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