· Передача данных в PHP скрипт (или ввод данных) осуществляется посредством html–форм.
·
<form action="test.PHP" method="post"> Ваше имя <input type="text" name="name"><br> Ваша фамилия <input type="text" name="fam"><br> <input type="submit" value="Да!"> </form> |
·
· Если указать в свойстве action тега form в качестве скрипта–обработчика файл test.PHP, содержащий следующие строки:
·
<?echo "Поздравляю, $_POST['name'] $_POST['fam'],<br> скрипт, передающий данных из формы, заработал! ";?> |
·
· то имена полей формы и их значения передадутся скрипту.
· Существует два самых распространенных метода передачи данных из формы в скрипт: GET и POST. Не вдаваясь в технические подробности, отметим, что пользователь может различить их только по виду адресной строки. Например, если URL выглядит http:// URL/страница.PHP?имя=значение&имя=значение, то мы можем сказать, что в данной форме использован метод GET. Этот метод предполагает присоединение к URL имен и значения форм. Метод POST, в отличие от GET, незаметен для пользователя и ничего не прибавляет к URL, а передает данные отдельным запросом.
· Данные, переданные на сервер методом GET, хранятся в суперглобальном массиве $_GET, а данные, переданные методом POST, – в суперглобальном массиве $_POST. Индексами массивов являются имена полей формы.
· Перейдем теперь непосредственно к самим формам и рассмотрим различные способы ввода данных в скрипт.
· <INPUT><TEXTAREA>
· Два схожих элемента формы, предназначенные для ввода текста. В скрипт значения передаются следующим образом: значение атрибута name становится индексом массива, а введенные в элемент данные – значением этого элемента массива.
· <SELECT>
· В HTML это записывается следующим образом:
· <select name="variants">
· <option value="1">Вариант1</option>
· <option value="2">Вариант 2</option>
· <option value="etc">и т.д.</option>
· </select>
· В скрипт передается переменная variants с одним из значений (1, 2 или etc) в зависимости от выбора пользователя. Если value не указаны, передается текст между тегами <option>.
· < INPUT Type="checkBox">
· В случае установки флажка в обработчик передается переменная с именем, соответствующим имени самого checkbox, со значением On. Если checkbox пуст, то в скрипте эта перенная вообще не будет определена.
· < INPUT type="radio">
· Самый распространенный способ использования этого элемента – выбор только одного из альтернативных вариантов. Для него соответствует следующий HTML_код:
· <input type="radio" name="var" value="1">Вариант 1
· <input type="radio" name="var" value="variant_2">Вариант 2
· В скрипт передастся переменная var со значением либо 1, либо variant_2.
· < INPUT type="HIDDEN">
· Невидимый элемент формы, но тем не менее несущий значение в скрипт. В PHP–программировании его часто используют для передачи скрытых параметров.
· <INPUT type="SUBMIT"><INPUT type="Image" src="адрес">
· Оба элемента выполняют одинаковую функцию – подачу запроса на обработку формы. Без одного из этих элементов функциональная форма просто не может существовать. Image имеет одну особенность: этот элемент может передавать скрипту два значения: координаты X и Y пикселей изображений, на которые был совершен клик.
· Данные, полученные из формы, далее обрабатываются и могут быть выведены на экран, сохранены в файле либо базе данных. Данные, полученные из форм от пользователя, необходимо в обязательном порядке проверять, так как «хакеры» через них могут передать вредоносный программный код, который приводит к уничтожению сайта.