Топ контрибуторов
loading
loading
Знаете ли Вы, что

Если у вас есть уникальная статья и вы хотите, чтобы она стала достоянием общественности, вы можете разместить ее на Quizful.

Лента обновлений
ссылка Mar 27 19:27
Комментарий от Kibalcish:
прошло пять лет....
ссылка Mar 27 10:48
Добавлен вопрос в тест Алгоритмы
ссылка Mar 26 18:58
Комментарий от DimaDK:
посмотрите на это так:
(a, b) = (0, 1) т.е. а принимае зн...
ссылка Mar 26 08:47
Комментарий от user000:
извиняюсь, всё верно - этот вариант ответа не подходит и...
ссылка Mar 25 21:00
Комментарий от dolbatehnik:
1. A - это абстрактный класс, его объект создать нел...
Статистика

Тестов: 153, вопросов: 8597. Пройдено: 456531 / 2235261.

Простейшая форма на HTML+PHP

head tail Статья
категория
PHP
дата19.03.2012
авторansolomatin
голосов16

Итак, для начала создадим форму на HTML, в поля которой посетитель будет вводить данные. Для примера будем использовать 3 поля: Имя, E-mail и Сообщение.

Содержимое файла "index.html":


<html>
<body>

<form action= "post.php" method= "POST">

<p>Имя: </p>
<p> <input type= "text" name= "name"> </p>

<p>E-mail: </p>
<p> <input type= "text" name= "email"></p>

<p>Сообщение: </p>
<p> <textarea rows= "10" cols= "45" name= "message"></textarea></p>

<input type= "submit" value= "Отправить">

</body>
</html>


В этой простейшей HTML форме я использую метод передачи POST и передаю 3 параметра (name, email,  message) PHP скрипту (post.php) лежащему в корне сайта после нажатия на кнопку «Отправить».

Полей для ввода может быть сколько угодно и с различными атрибутами. Названия параметров (name, email,  text) используйте, какие вам удобно. Главное чтобы эти параметры были правильно обработаны  скриптом (post.php).  Вы можете использовать выпадающие списки (select), флажки для выбора (checkbox), переключатели (radio) и т.д. Здесь, к примеру, для ввода сообщения я использовал текстовое поле textarea с шириной в 45 символов и с высотой в 10 строк.

Теперь создадим файл post.php. Название и путь к файлу указываются в form action= "post.php" HTML формы.

Содержимое файла "post.php":



<?

// ----------------------------конфигурация-------------------------- //

$adminemail="admin@site.ru";  // e-mail админа

$date=date("d.m.y"); // число.месяц.год

$time=date("H:i"); // часы:минуты:секунды

$backurl="http://site.ru/index.html";  // На какую страничку переходит после отправки письма

//---------------------------------------------------------------------- //

 

// Принимаем данные с формы

$name=$_POST['name'];

$email=$_POST['email'];

$msg=$_POST['message'];

 

// Проверяем валидность e-mail

if (!preg_match("|^([a-z0-9_\.\-]{1,20})@([a-z0-9\.\-]{1,20})\.([a-z]{2,4})|is", strtolower($email)))

 {

  echo "<center>Вернитесь <a href='javascript:history.back(1)'><B>назад</B></a>. Вы указали неверные данные!";

  }

 else

 {

$msg="

<p>Имя: $name</p>

<p>E-mail: $email</p>

<p>Сообщение: $msg</p>

";

 

 // Отправляем письмо админу

mail("$adminemail", "$date $time Сообщение от $name", "$msg");

 

// Сохраняем в базу данных

$f = fopen("message.txt", "a+");

fwrite($f," \n $date $time Сообщение от $name");

fwrite($f,"\n $msg ");

fwrite($f,"\n ---------------");

fclose($f);

 

// Выводим сообщение пользователю

print "<script language='Javascript'><!-- function reload() {location = \"$backurl\"}; setTimeout('reload()', 6000); //--></script>

$msg

<p>Сообщение отправлено! Подождите, сейчас вы будете перенаправлены на главную страницу...</p>";

exit;

 }

?>


Давайте разберемся. В самом начале задается небольшая конфигурация скрипта. Это e-mail админа, формат даты и времени и страница куда будет перенаправлен посетитель после отправки письма.

Далее идет объявление переменных которые скрипт принял методом POST. Все переменные, а так же их названия должны соответствовать HTML форме с которой они отправлены.

Затем проверяем корректность введенного E-mail. Эта функция хороша тем, что проверяет на валидность даже те названия адресов E-mail у которых в логине есть например точки. Т.к. такие адреса уже давно не редкость.

Если все ОК, то отправляем письмо админу.

Затем сохраняем сообщение в базе данных – это файл message.txt лежащий в корне сайта. Если его нет, то скрипт самостоятельно его создаст т.к. в функции fopen стоит атрибут "a+".

Далее пользователю выводится сообщение об удачной отправке письма и веденным им текстом. И через 6000 миллисекунд с помощью JavaScriptа он перенаправляется на страницу указанную в конфигурации (переменная $backurl).

Я надеюсь, что этот простенький пример или его отдельные части помогут вам для реализации небольших идей на сайте.

Автор: Антон Соломатин, г. Волгоград

Если Вам понравилась статья, проголосуйте за нее

Голосов: 16  loading...
ESCAPE   uasmile   chizztectep   pechatny   crowley   nick160690   thunder_rey   maxes   ivan_labyk   agarkin   fatalik   Vogdux   maha111   alex77   Serusch   ansolomatin