Обработка форм с помощью PHP

С помощью форм удобно получать и обрабатывать данные пользователей

Форма создается с помощью конструкции вида:


<pre><form name="namevalue" method="methodvalue" action="actionvalue">
</form>


Здесь атрибут name содержит имя формы, атрибут method может принимать два
значения: get или post, атрибут action содержит url, на который будут передаваться данные.

Значения get и post определяют способ передачи имен переменных и их значений.
При использовании get передача данных происходит в открытом виде (в ссылке), а при использовании post данные скрыты. На практике чаще всего используют post.

Процесс отправки данных формы происходит при нажатии на специальный элемент submit. Разместить этот элемент на форме можно следующим образом:


<input name="namevalue" type="submit" value="label">

где атрибут name содержит имя кнопки, атрибут value содержит текст, который будет отображаться на кнопке

В качестве примера, создадим приложение, которое позволяет вводить имя пользователя и отображать его на html странице.

Создадим два файла: form.php и formaction.php. Файл form.php будет содержать форму, а файл formaction — выполнять обработку данных.

Файл form.php содержит описание формы


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
	"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
	<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
	<title>Form example 1</title>
</head>
<body>

<form name="form1" method="post" action="formaction.php">
<p><input type="text" name="login" value="Имя пользователя"></p>
<p><input type="submit" name="Submit" value="Вход"></p>
</form>

</body>
</html>

Файл formaction.php содержит

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
	"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
	<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />\
	<title>Form example 1</title>
</head>
<body>

<?php
echo "Добро пожаловать!";
?>

</body>
</html>

В результате выполнения файла form.php, получим
Рисунок 1.

При нажатии на кнопку с надписью Вход получим
Рисунок 2.

В данном примере не осуществляется обработка переданных данных.
Модифицируем наш пример так, чтобы после словосочетания Добро пожаловать выводилось имя пользователя, введенное в форме.

В php есть встроенные ассоциативные массивы $_GET, $_POST, $_REQUEST, в которых хранятся переданные данные.
В массиве $_GET хранятся данные, переданные с помощью метода get, массиве $_POST — данные, переданные с помощью метода post, массиве $REQUSET — данные, переданные методами get и post.

Изменим файл formaction.php

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
	"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
	<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />\
	<title>Form example 1</title>
</head>
<body>

<?php
$username = $_POST['login'];
echo "Добро пожаловать, ".$username."!";
?>

</body>
</html>

Здесь в переменную username записываются данные, переданные из элемента формы с именем login, и затем значение этой переменной добавляется после слов «Добро пожаловать». Например, введя в форме имя пользователя User, получим «Добро пожаловать, User».
</cut
  • avatar
  • 0

0 комментариев

Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.