Главная

Популярная публикация

Научная публикация

Случайная публикация

Обратная связь

ТОР 5 статей:

Методические подходы к анализу финансового состояния предприятия

Проблема периодизации русской литературы ХХ века. Краткая характеристика второй половины ХХ века

Ценовые и неценовые факторы

Характеристика шлифовальных кругов и ее маркировка

Служебные части речи. Предлог. Союз. Частицы

КАТЕГОРИИ:






Пример обработки запроса с помощью PHP




Нужно написать форму для регистрации участников заочной школы программирования и после регистрации отправить участнику сообщение (сгенерировать это сообщение и вывести его на экран в браузере). Начальный вариант формы регистрации приведен выше. Изменим его таким образом, чтобы каждый регистрирующийся мог выбрать сколько угодно курсов для посещения, и не будем подтверждать получение регистрационной формы.

<h2>Форма для регистрации студентов</h2><form action="1.php" method=POST>Имя <br><input type=text name="first_name" value="Введите Ваше имя"><br>Фамилия <br><input type=text name="last_name"><br>E-mail <br><input type=text name="email"><br><p> Выберите курс, который вы бы хотели посещать:<br><input type=checkbox name='kurs[]' value='PHP'>PHP<br><input type=checkbox name='kurs[]' value='Lisp'>Lisp<br><input type=checkbox name='kurs[]' value='Perl'>Perl<br><input type=checkbox name='kurs[]' value='Unix'>Unix<br><P>Что вы хотите, чтобы мы знали о вас? <BR><textarea name="comment" cols=32 rows=5></textarea><input type=submit value="Отправить"><input type=reset value="Отменить"></form>

Способ передачи значений элемента checkbox состоит в следующем: если писать в имени элемента kurs[], – первый отмеченный элемент checkbox будет записан в первый элемент массива kurs, второй отмеченный checkbox – во второй элемент массива и т.д. Можно, конечно, просто дать разные имена элементам checkbox, но это усложнит обработку данных, если курсов будет много.

Скрипт, который все это будет разбирать и обрабатывать, называется 1.php (форма ссылается именно на этот файл, что записано в ее атрибуте action). По умолчанию используется для передачи метод GET, но мы указали POST. Если человек регистрируется, скрипт генерирует соответствующее сообщение. Если человек выбрал какие-то курсы, то ему выводится сообщение о времени их проведения и о лекторах, которые их читают. Если человек ничего не выбрал, то выводится сообщение о следующем собрании заочной школы программистов.

<?// создадим массивы соответствий курс-время его // проведения и курс-его лектор$times = array("PHP"=>"14.30","Lisp"=>"12.00", "Perl"=>"15.00","Unix"=>"14.00");$lectors = array("PHP"=>"Василий Васильевич", "Lisp"=>"Иван Иванович", "Perl"=>"Петр Петрович", "Unix"=>"Семен Семенович");define("SIGN","С уважением, администрация"); // определяем подпись письма как константуdefine("MEETING_TIME","18.00"); // задаем время собрания студентов$date = "12 мая"; // задаем дату проведения лекций //начинаем составлять текст сообщения$str = "Здравствуйте, уважаемый ". $_POST["first_name"]. " ". $_POST["last_name"]."!<br>";$str.= "<br>Сообщаем Вам, что ";$kurses = $_POST["kurs"]; // сохраним в этой переменной // список выбранных курсовif (!isset($kurses)) { // если не выбран ни один курс $event = "следующее собрание студентов"; $str.= "$event состоится $date ". MEETING_TIME. "<br>";} else { // если хотя бы один курс выбран $event = "выбранные Вами лекции состоятся $date <ul>"; //функция count вычисляет число элементов в массиве $lect = ""; for ($i=0;$i<count($kurses);$i++){ // для каждого выбранного курса $k = $kurses[$i]; // запоминаем название курса $lect = $lect. "<li>лекция по $k в $times[$k]"; // составляем сообщение $lect.= " (Ваш лектор, $lectors[$k])"; } $event = $event. $lect. "</ul>"; $str.= "$event";}$str.= "<br>". SIGN; // добавляем подписьecho $str; // выводим сообщение на экран?>





Не нашли, что искали? Воспользуйтесь поиском:

vikidalka.ru - 2015-2024 год. Все права принадлежат их авторам! Нарушение авторских прав | Нарушение персональных данных