|
|
Интересные статьи
|
|
|
|
|
Формы, данные и PHP 
Настало время обратиться к формам. На различных сайтах Вам, наверное, часто приходилось заполнять различные формы при регистрации, при посылке писем через веб-интерфейс, участвуя во всевозможных интернет-опросах, заполняя строку поиска в поисковых системах. Так вот поля, в которые Вам приходилось вводить ту или иную информацию, принадлежат к различным частям форм.
В html-коде форма записывается при помощи тега
<FORM name="formName" action="script.name" method="POST | GET" enctype="application/x-www-form-urlencoded | multipart/form-data"> Здесь записываются поля формы.
</FORM>
«name» - уникальное имя формы, «action» - путь к скрипту обабатывающему данные формы, «method» - метод передачи данных (GET - через строку браузера, POST - в теле запроса браузера). Методом POST можно передавать больший объем информации. По умолчанию устанавливается метод GET. «enctype» - устанавливает MIME-тип для данных передающихся вместе с формой. Обычно не пишется, однако необходимо установить тип «multipart/form-data», если через форму передается файл. Внутри формы записываются поля формы. Поля формы бывают текстовыми (в такие поля обычно вводится строка текстовых данных):
<INPUT type="text" name="textName" value="DefaultValue">
Здесь «value» - значение поля формы, которое будет отображаться при загрузке формы (можно оставлять пустым). Поля формы бывают списками (такие поля содержат списки значений, которые можно выбирать нажатием левой клавиши мыши):
<SELECT name="selectName"> <OPTION value="Value1"> <OPTION value="Value2"> <OPTION value="Value3"> ... <OPTION value="ValueN"> </SELECT>
В поле формы можно загрузить путь к файлу (такое поле передает в теле запроса файл):
<INPUT type="file" name="fileName">
Поле формы может быть флагом или переключателем:
<INPUT type="radio"> <INPUT type="checkbox" CHECKED>
«CHECKED» - говорит о том, что элемент в данный момент выбран. Для больших текстовых полей однострочного режима недостаточно, поэтому в этом случае текст помещается в текстовую зону (TEXTAREA):
<TEXTAREA name="bigTEXT" cols="ANumber" rows="BNumber"> Default Text </TEXTAREA>
Здесь «rows» и «cols» - количество строк и колонок текстовой зоны, иными словами высота и ширина текстового поля. Также поля формы бывают кнопками (эти поля на событие submit отправляют поля формы скрипту на обработку, на событие reset - перезагружают форму, приводя ее к исходному состоянию):
<INPUT type="reset" name="ResetForm" value="Reset"> <INPUT type="submit" name="SendForm" value="Send">
Для примера напишем код формы, отправляющий данные скрипту list.php, который будет возвращать данные формы:
<FORM name="send" action="list.php" method="post"><input type="hidden" name="phpMyAdmin" value="pYlgg5oTS0DALx4crrTrVHVzGK9" /> <INPUT type="text" name="val1" size=20 value="Поле 1"> <INPUT type="text" name="val2" size=30 value="Поле 2"> <SELECT name="val3"> <OPTION value="Value1"> <OPTION value="Value2" SELECTED> <OPTION value="Value3"> </SELECT> <INPUT type="submit" name="SendForm" value="Send"> </FORM>
Если вы вставите этот код в html-страницу (например, list.html), то при открытии этой страницы отобразится форма с двумя текстовыми полями и списком выбора значений (Значение «Value2» будет выбрано по-умолчанию). Завершать форму будет кнопка с надписью «Send». При нажатии на кнопку «Send» данные отправляются скрипту list.php, который мы сейчас с Вами и рассмотрим. Для начала поставим задачу, которую должен выполнять скрипт list.php, а именно скрипт будет подхватывать скриптом значения данных формы и выводить их обратно на страницу.
#файл list.php <?php $val=array(); /* если скрипт загрузился в результате нажатия кнопки Send */ if(isset($_POST['SendForm'])){ /* присваиваем переменным значения полей формы */ $val[] = $_POST['val1']; $val[] = $_POST['val2']; /* переменной $val3 присваивается значение OPTION SELECTED */ $val[] = $_POST['val3']; } /* выводим массив $val в браузер */ foreach($val as $v){ echo "<div>--".$v."--</div>";}
?>
Из листинга скрипта видно, что данные из формы записываются в глобальный массив $_POST, значения которого доступны в любой части программы на PHP. Источник: http://itfn.ru
|
|
|
Отправка почты с помощью PHP
Попробуем написать программу на PHP, использующую информацию, передаваемую в поля формы ввода данных, для отправки электронного письма адресату с веб-страницы сайта |
|
|
|
|