Как начать программировать на PHP. Часть 2.
Юрий Мисейчик Продолжение. Начало здесь: Как начать программировать на 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 для быстрого получения следующих статей.
Рубрики: Новичку |


07.11.2007 в 18:03
Интересная статья, жду продолжения. НА РСС подписался)
19.11.2007 в 18:38
[…] блогоскопе: Мастер Виртуальных Дел раскрывает секреты форм обратной связи в PHP. Пока Оханский Перекресток раздает блоги прямо на […]
08.06.2008 в 12:17
Отличные статьи, спасибо! Если что-то непонятно, можно обращаться к Вам за консультацией?
02.08.2008 в 21:01
Это хорошо что вы начали вести блог,ведь у вас это отлично получается и надеюсь будет еще лучше. Главное писать о том,в чем вы разбираетесь. Удачи.
25.08.2008 в 17:32
Вот это я понимаю сайт! Прям путеводитель по программированию! Читаю с удовольствием!