Как начать программировать на PHP. Часть 2.

05.11.2007 Юрий Мисейчик

Продолжение. Начало здесь: Как начать программировать на PHP. Часть 1.

Уже на следующий день я сел дописывать свой скрипт, тем более по моим представлениям осталось совсем ничего. В первую очередь я полез в интернет с целью изучить, что и как писать в PHP скриптах. И понял только одно, что бы писать на PHP надо просто сесть и начать писать на PHP.

Я создал новый файл, который назвал form.php и открыл его в блокноте, первая строчка, которую я написал была <?php – эта строка начинает любой php скрипт. Второй строчкой я написал ?> - этой строчкой заканчивается любой скрипт php. :)

В Интернете нашел справочник, в котором были описаны все функции PHP. В этом справочнике я и нашел функцию mail(), которая отправляет сообщение на указанный e-mail . Пример использования функции в справочнике выглядел вот так:
mail("nobody@example.com", "the subject", $message);
Меня конечно немного поразил такой пример, но логически подумав, я понял, что в этой строке “nobody@example.com” – e-mail на который будет отправляться письмо, сразу же заменил на свой; “the subject” – тут должна быть тема письма, заменил на строку: “Сообщение с сайта”. Так как я к этому времени уже достаточно изучил PHP, то следующий блок меня не очень испугал: $message – я уже знал, что все выражения, перед которыми стоит знак ‘$’ называются переменными и переменным можно присваивать различные значения на мое усмотрение, в нашем случае переменная $message должна содержать текст сообщения для отправки на указанный e-mail. Я решил определить эту переменную до отправки и пока просто перед функцией mail() написал $message=’’;. Таким образом, я определил переменную, но пока не занес в нее данные, которые должны были мне отправляться.

После всего содержимое файла form.php стало выглядеть таким образом:
<?php $message = ""; mail("tut@moiemail.ru", "Сообщение с сайта", $message); ?>
Осталось только создать сообщение, которое будет мне отправляться. Для этого нам нужны значения полей, которые заполнял пользователь, эти значения хранятся в массиве $_POST[]. Если бы при создании формы мы указали method=”get”, то нужные нам значения находились бы в переменной $_GET[]. Все что нам нужно присвоить переменной $message в нужном порядке значения из массива $_POST[], для обращения к элементам массива, используются индексы нужных нам элементов, которые представляют собой названия полей нашей формы. Таким образом для получения e-mail мы обращаемся к элементу массива mail - $_POST[‘mail’] и т.д. Теперь скрипт приобрел вид:
<?php $message = “E-mail: ”. $_POST[‘mail’].”\nName: ”.$_POST[‘name’].”\nText: ”.$_POST[‘text’].; mail("tut@moiemail.ru", "Сообщение с сайта", $message); ?>
Из неизвестных элементов для вас является только обозначение "\n" он переносит текст на новую строку, так наше сообщение будет выглядеть более читаемо. В-принципе скрипт уже работал и отправлял мне сообщения. Но отправитель при отправке письма получал пустую страницу, поэтому я недолго думая, поставил перенаправление на начальную форму такой строчкой header("Location: form.htm"); так пользователь попадал обратно на форму для написания письма. В конце файл form.php выглядел так:
<?php $message = “E-mail: ”. $_POST[‘mail’].”\nName: ”.$_POST[‘name’].”\nText: ”.$_POST[‘text’].; mail("tut@moiemail.ru", "Сообщение с сайта", $message); header("Location: form.htm"); ?>
И вполне корректно работал с файлом form.htm, который я создавал в первой части рассказа. И выглядел он так:
<html> <head> <title>Обратная связь</title> </head> <body> <form method=”post” action="form.php"> E-mail: <input type=”text” name=”mail”><br> Имя: <input type=”text” name=”name”><br> Сообщение: <textarea cols=”31” rows=”7” name=”text” ><br> <input type=”submit” value=”Отправить”> </form> </body> </html>
Конечно, со временем я начал понимать, что мой скрипт имеет кучу недочетов и я его даже пытался дорабатывать, но это был мой первый скрипт и я был очень рад, что он отлично работал, хотя наверно никто кроме меня им так и не воспользовался :(
Но написав этот скрипт я приобрел уверенность в том, что смогу написать и более сложные программы на PHP, если это потребуется, для этого я постоянно изучал все новое и новое о PHP и уже буквально через несколько месяцев мне понадобилось знание PHP. Это тема совсем для другой статьи, поэтому советую вам подписатся на rss для быстрого получения следующих статей.

google.com bobrdobr.ru del.icio.us technorati.com linkstore.ru news2.ru rumarkz.ru memori.ru moemesto.ru

Рубрики: Новичку |

Комментарии (5)

  1. pribytok пишет:

    Интересная статья, жду продолжения. НА РСС подписался)

  2. Копирайтинг О Главном пишет:

    […] блогоскопе: Мастер Виртуальных Дел раскрывает секреты форм обратной связи в PHP. Пока Оханский Перекресток раздает блоги прямо на […]

  3. Наумов Михаил пишет:

    Отличные статьи, спасибо! Если что-то непонятно, можно обращаться к Вам за консультацией?

  4. Ленок пишет:

    Это хорошо что вы начали вести блог,ведь у вас это отлично получается и надеюсь будет еще лучше. Главное писать о том,в чем вы разбираетесь. Удачи. :)

  5. Ремонт пишет:

    Вот это я понимаю сайт! Прям путеводитель по программированию! Читаю с удовольствием!

Оставить комментарий

Заметьте: Включена проверка комментариев. Нет смысла повторно отправлять комментарий.