До настоящего времени мы просто посылали браузеру пользователя информацию. Но иногда информацию необходимо и получать. Пришло время узнать, как получать данные от пользователя.
<form action="handler.php">
...
</form>
В качестве задания для самостоятельной работы предлагаю вам модифицировать пример из предыдущего поста с приветствием по времени суток.
Элементы управления
Для ввода информации в HTML служат элементы управления, такие как поля ввода, переключатели и кнопки. Теги, описывающие эти элементы:
<!-- поле ввода текстовой информации -->
<input type=text name="user_name"></input>
<input name=sex type=radio value="W">Женский</input>
<!-- Кнопка -->
<input type"button">Нажми меня</button>
Это не все, а только основные, элементы управления предусмотренные HTML. В новом стандарте HTML5 их еще больше.
<!-- поле ввода текстовой информации -->
<input type=text name="user_name"></input>
<!-- Переключатель (множественный выбор) -->
<input type=checkbox name="prop">Я собираюсь создать АИС</input>
<!-- Переключать (одиночный выбор) -->
<input name=sex type=radio value="M" checked>Мужской</input><input name=sex type=radio value="W">Женский</input>
<!-- Кнопка -->
<input type"button">Нажми меня</button>
Это не все, а только основные, элементы управления предусмотренные HTML. В новом стандарте HTML5 их еще больше.
Попробуйте вставить эти элементы в новый HTML документ и протестировать их работу.
Подготовка к отправке данных на сервер. Формы
Для того, чтобы данные были приняты сервером, нам необходимо указать, какая страница их будет обрабатывать. Для этих целей элементы управления организуются в единый блок, который называется "форма". В параметре формы "action" прописывается, какой документ на сервере примет пользовательские данные. Страница, содержащая только разметку (html-документ) не сможет обработать данные.
...
</form>
Приступим. Попробуем поприветствовать пользователя, зашедшего на наш сайт по имени, которое он должен ввести на стартовой странице. Создайте html страницу по шаблону, описанному в посте о разметке веб-страницы.
В тело документа поместите форму и поле ввода текстовой информации. В параметре "action" пропишите имя нашего обработчика "primer5.php". Задайте имя для этого поля, например user_name.
Ввиду простоты примера не буду приводить его код. Попробуйте сами. Если не получится, отпишите в комментариях.
Все данные формы передаются нашей странице в виде массива с именем "$_REQUEST". Приводя простую абстракцию - массив - это сгруппированные переменные, которым определено одно имя. Чтобы получить содержимое, переданное в элементе управления с именем "имя переменной" нам нужно обратиться к элементу массива $_REQUEST['имя переменной']. То есть данные из
<input type=text name="user_name"></input>
в файле "primer5.php" будут "лежать" в
$_REQUEST["user_name"];
Чтобы вывести имя пользователя на экран броузера в файле "primer5.php" нужно прописать:
<?php
echo $_REQUSET["user_name"];
?>
В качестве задания для самостоятельной работы предлагаю вам модифицировать пример из предыдущего поста с приветствием по времени суток.
В открывающем теге кнопки ошибка не input, a button =)
ОтветитьУдалитьВ принципе, правильно. Но попробуй в документ вставь
ОтветитьУдалитьinput type="button" value="test"
и посмотри, что получится (в <>, конечно)
А в чем разница, если итог один?
ОтветитьУдалитьВопрос поставил меня в тупик.
ОтветитьУдалитьЕсли в форме не указывать метод он по дефолту гет ставит? или метод нужно указывать обязательно... у меня лично не работало без метода....
ОтветитьУдалитьИ нужно ли закрывать input?
ОтветитьУдалитьДа, по умолчанию используется "GET". Метод указывать не обязательно. Если убрать, то работает.
ОтветитьУдалить"input" относится к непарным тегам. Его закрывать не нужно.