Учимся работать с формами.

Сегодня я хочу рассмотреть php как инструмент для обработки данных пользователя. До этого мы писали скрипты, которые просто выполняют определенную задачу на стороне сервера без взаимодействия с пользователем. Но в повседневной практике, такое бывает редко.
Когда вы заходите на какой-нибудь ресурс. Вводите логин и пароль, то в большинстве случаев их обработкой занимается php. Даже кликая ссылку на сайте, скорее всего все проходит через скрипт. Поэтому свой второй виток изучения пхп я решил начать с обработки форм.

<FORM
    name="название формы"
    action="путь к скрипту, который будет обрабатывать форму"
    method="метод отправки данных">
     Элементы формы
</FORM>

так выглядит простейшая форма.
Кстати если в поле action ничего не указать, то форма будет передана текущей программе.
Давайте все рассмотрим на примере.

Создайте файл myform.html следующего содержания:

<html>
<head>
     <title>обработка форм</title>
</head>
<body>
<FORM
    name="form"
    action="obrabotka_form.php">
     <input type="text"
           name="user"
           value=""
           title="input name">
     <input type="submit"
              value="enter"
              name="enter_form">    
</FORM>
</body>
</html>

Затем создайте файл для скрипта obrabotka_form.php

<html>
<head>
  <title>скрипт обработки формы</title>
</head>
<body>
<?
echo "мистер".$_REQUEST['user']."скоро будет профессионалом в php";
?>
</body>
</html>

Что же произошло? Когда вы ввели имя и нажали на кнопку, данные из формы были переданы скрипту обработчику.
Прошу обратить внимание, что я не указал метод отправки данных. Значит использовался метод по умолчанию GET. После нажатия кнопки вы могли видеть что строка браузера приняла вид …/obrabotka_form.php?user=name&enter_form=enter.

По сути, данные просто присоединились к скрипту. Вы можете поэкспериментировать и, добавить в myform.html ссылку вида, <a href=”obrabotka_form.php?user=новичок”>результат</a>
будет тоже самое. Потому что скрипту неинтересно, как к нему попали данные. Если в будущем вам понадобиться передать два параметра, то он и все последующие определяются через символ &. Допустим:

action?parametr1=1&parametr2=2&parametr3=3

Помимо GET еще есть метод POST. Но пока не стоит заострять на этом внимание.

Чтобы вытащить данные для обработки, надо использовать $_REQUEST[‘имя поля формы’] в этом массиве хранятся все данные от методов GET и POST. Можно и с помощью $_GET[‘имя поля формы’] или $_POST[‘имя поля формы’], но так вроде уже никто не делает 😉
Еще хочу сделать заметку о выводе на экран.
когда в сообщение надо вставить значения перменных, то их следует разделять точками.
“мистер”.$_REQUEST[‘user’].”скоро…
С вами был novice. Всего доброго.





Читайте также:



Один ответ на “Учимся работать с формами.”

  1. KEI

    По поводу того, что массив $_POST[] не используется не соглашусь, я на своём сайте (пока в стадии разработки) стараюсь передавать данные методом пост и принимать их только через $_POST[], это своеобразная защита от хакеров, предотвращает ввод переменных хакерами через адресную строку. А кроме того, использование GET даёт лишнюю информацию о структуре сайта для хакера. Поэтому мне кажется лучше через пост отправлять и принимать только через $_POST[]. Может я в чём-то не прав, сам только-только занялся сайтостроением, но помоему безопасней POST[] использовать…


© Copyright. . I-Novice. All Rights Reserved. Terms | Site Map