</head>
<body>
<?
if ($_SERVER[REQUEST_METHOD] == POST) {
echo <h1>Привет, <b> . $_POST[name] . </b>!</h1>;
}
?>
<form method="POST" action="<?=$_SERVER[PHP_SELF]?>">
Введите Ваше имя: <input type="text" name="name">
<br>
<input type="submit" name="okbutton" value="OK">
</form>
</body>
</html>
Форма, приведенная в строках 8-12 (выделено цветом), содержит два атрибута: name и okbutton:
1. атрибут method указывает метод отправки формы POST;
2. атрибут action, указывающий URL, на который отправляется форма, заполняется значением серверной переменной PHP_SELF - адресом выполняемого в данный момент скрипта.
<?=$_SERVER[PHP_SELF]?> - сокращенная форма записи для echo: <? echo $_SERVER[PHP_SELF]; ?>.
Если в поле форма name ввести, например, значение Вася, и нажать кнопку OK, то Браузер отправит после этого на сервер POST-запрос. Тело запроса имеет вид: name=Вася&okbutton=OK. PHP при этом автоматически заполнит массив $_POST:
$_POST[name] = Вася
$_POST[okbutton] = OK
В действительности, значение "Вася" отправляется браузером в urlencode-виде; для кодировки windows-1251 это значение выглядит как %C2%E0%F1%FF. Но, поскольку PHP автоматически осуществляет необходимое декодирование, мы можем "забыть" об этой особенности - пока не придется работать с HTTP-запросами вручную.
Так как в теле запроса указываются только имена и значения, но не типы элементов форм, PHP понятия не имеет, соответствует $_POST[name] строке ввода, кнопке, или списку. Но эта информация нам, в общем-то, совершенно не нужна.
Поскольку знать, что написано на кнопке submit, нам необязательно, в строке можно удалить атрибут name, сократив описание кнопки до <input type="submit" value="OK"> (листинг form_4.php). В этом случае, браузер отправит POST-запрос name=Вася.
Листинг form_4.php
<html>
- 2. PHP: Препроцессор Гипертекста
- 2.1. Что такое PHP?
- 2.2. Возможности PHP
- 2.3. Почему нужно выбирать PHP
- 2.4. Недостатки PHP
- 2.5. Встраивание PHP в HTML - форму
- 2.6. HTML-формы. Массивы $_GET и $_POST
- 2.6.1. Особенности метода отправки формы POST
- 2.6.2. Особенности метода отправки формы GET
- 2.7. Функция htmlspecialchars()
- 2.8. Применение функции phpinfo() для отладки
- 3. Что такое MySQL
- <html>
- </html>
- <html>
- </html>
- <html>
- </html>
- <html>
- </html>
- <html>
- </html>
- <html>
- </html>
- <html>
- </html>
- <html>
- </html>
- <html>
- </html>
- <html>
- </html>
- <html>
- <head>
- </head>
- <head>
- </head>
- <head>
- </head>
- <head>
- </head>
- <head>
- </head>
- <head>
- <body>
- </body>
- <body>
- </body>
- <body>
- </body>
- <body>
- </body>
- <body>
- </body>
- <body>
- </body>
- <body>
- </body>
- <body>
- </body>
- <body>
- </body>
- <body>
- </body>
- <body>
- </form>
- </form>
- </form>
- </form>
- </form>
- </form>
- </form>
- </form>
- </form>
- Введите Ваше имя: <input type="text" name="name">
- Введите Ваше имя: <input type="text" name="name">
- Введите Ваше имя: <input type="text" name="name">
- Введите Ваше имя: <input type="text" name="name">
- Введите Ваше имя: <input type="text" name="name">
- Введите Ваше имя: <input type="text" name="name">
- Введите Ваше имя: <input type="text" name="name">
- <br>
- <br>
- <br>
- <br>
- <br>
- <br>
- <br>
- <br>
- <input type="submit" name="okbutton" value="OK">
- <input type="submit" name="okbutton" value="OK">
- <?php
- ?>
- ?>
- ?>
- ?>
- ?>
- ?>
- ?>
- ?>
- ?>
- ?>
- ?>
- Доступ к базе данных MySql с использованием языка рнр
- Создание базы данных MySql и таблиц
- 5.1 Обоснование выбора средств и инструментов разработки
- Доступ до бази даних MySql з використанням мови рнр
- 12 ) Оператор вызова функции и передача параметров в рнр.
- Цели и задачи лабораторной работы
- 1.3. Среды разработки
- Работа с каталогами в рнр
- Работа с каталогами в рнр