Файл: «final.php»
<?php header('Content-Type: text/html; charset=utf-8'); setlocale(LC_ALL, 'ru_RU.65001', 'rus_RUS.65001', 'Russian_Russia. 65001', 'russian'); session_start(); if ($_SESSION['talon']=="" or $_POST["ФИО"]=="") { exit ("<body><div align='center'><h1>Форма заполнена некорректно!</h1></div></body>"); } ?> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <title>финал</title> <meta http-equiv="Content-Style-Type" content="text/css"> <meta name="keywords" content="интернет, магазин, картины, прдаем, продажа, картин"> <meta name="description" content="интернет магазин"> </head> <body> <div align="center"> <h1>Заказ принят. Мы Вам перезвоним в течение 24-часов</h1> <?php $mail=$_POST["mail"]; $fio=$_POST["ФИО"]; $tel=$_POST["телефон"]; $adres=$_POST["adres"]; $com=$_POST["Ком"]; $summa=$_GET["summa"]; $talon=$_SESSION['talon']; echo "<b>ФИО: </b><font color='seagreen'>". $fio."</font><br>"; echo "<b>Адрес: </b><font color='seagreen'>".$adres."</font><br>"; echo "<b>Телефон: </b><font color='seagreen'>".$tel."</font><br>"; echo "<b>e-mail: </b><font color='seagreen'>".$mail."</font><br>"; echo "<b>Стоимость заказа: </b><font color='seagreen'>".$summa ."</font> р <br>"; echo "<b>Номер заказа: </b><font color='red'>".$talon."</font><br>"; echo "<b>Дата: </b><font color='seagreen'>".date('y/n/d')."</font>"; $to = 'vashapochita@mail.ru'; $subject = $fio; $message = "Номер сесии: ".$talon."<br>". "ФИО: ".$fio."<br>". "Стоимость заказа: ".$summa." р<br>". "Адрес: ".$adres."<br>". "Телефон: ".$tel."<br>". "e-mail: ".$mail."<br>". "Дата: ".date('d/n/y')."<br>". "Комментарии: ".$com; $headers = "Content-Type: text/html; charset=utf-8 \r\n"; mail($to, $subject, $message, $headers); session_destroy(); ?> <br><br><br><a href="magazin.php"><b>На главную</b></a> </div> </body> </html> |
На эту страницу покупатель попадет только в том случае, если его корзина не пуста, и он заполнил форму заказа. Здесь же происходит отправка письма вам на почту с данными, которые посетитель ввел в форму заказа и номером его «талона», именно по этому номеру вы будете выбирать товары из таблицы «zapisi_tovara.php» и отправлять его по указанному адресу.
Рассмотрим код:
session_start(); — запускаем сессии.
if ($_SESSION[‘talon’]==»» or $_POST[«ФИО»]==»») – проверяем если сессия с именем «talon» пустая или поле с именем «ФИО» пустое то выполняем код записанный в фигурных скобках.
exit («<body><div align=’center’><h1>Форма заполнена некорректно!</h1></div></body>»); — на экран высветится надпись «Форма заполнена некорректно!» и код читаться дальше не будет.
$mail=$_POST[«mail»];
$fio=$_POST[«ФИО»];
$tel=$_POST[«телефон»];
$adres=$_POST[«adres»];
$com=$_POST[«Ком»];
$summa=$_GET[«summa»];
$talon=$_SESSION[‘talon’]; — записываем в переменные значения, которые получили методом «POST» от формы и методом «GET» через адресную строку.
echo «<b>ФИО: </b><font color=’seagreen’>». $fio.»</font><br>»;
echo «<b>Адрес: </b><font color=’seagreen’>».$adres.»</font><br>»;
echo «<b>Телефон: </b><font color=’seagreen’>».$tel.»</font><br>»;
echo «<b>e-mail: </b><font color=’seagreen’>».$mail.»</font><br>»;
echo «<b>Стоимость заказа: </b><font color=’seagreen’>».$summa .»</font> р <br>»;
echo «<b>Номер заказа: </b><font color=’red’>».$talon.»</font><br>»;
echo «<b>Дата: </b><font color=’seagreen’>».date(‘y/n/d’).»</font>»; — выводим данные на экран.
$to = ‘svoiapochita@mail.ru’; — создаем переменную «$to», в которую записываем адрес вашей электронной почты.
$subject = $fio; — создаем переменную «$subject», в которую записываем переменную «$fio»
$message = «Номер сесии: «.$talon.»<br>».
«ФИО: «.$fio.»<br>».
«Стоимость заказа: «.$summa.» р<br>».
«Адрес: «.$adres.»<br>».
«Телефон: «.$tel.»<br>».
«e-mail: «.$mail.»<br>».
«Дата: «.date(‘d/n/y’).»<br>».
«Комментарии: «.$com; — создаем переменную «$message», в которую записываем те переменные с данными которые хотим получить в качестве текста письма.
$headers = «Content-Type: text/html; charset=utf-8 \r\n»; — создаем переменную «$headers», с указанием кодировки нашего письма.
mail($to, $subject, $message, $headers); — это и есть тот код который отправляет письмо на указанный адрес от таково-то субъекта с таким-то текстом в такой-то кодировки.
Важно знать, что «дэнвер» блокирует все отправленные письма и складывает их в папку «!sendmail» которая находиться в папке «tmp» а на хостинге такой проблемы нет.
session_destroy(); — обязательно уничтожаем все сессии ведь покупатель может вернуться и купить еще пару товаров, а в корзине у него будут высвечиваться и старые товары, которые он уже заказал именно поэтому надо уничтожить старый «талон» и выдать новый.
Таблицы, созданные в базе данных: «cortini»
Структура таблицы: «posetiteli»
Обзор таблицы: «posetiteli»
Структура таблицы: «tovari»
Обзор таблицы: «tovari»
Структура таблицы: «vibranie_tovari»
Обзор таблицы: «vibranie_tovari»
Скачать архив с таблицами, файлами и папкой с изображениями вы можете в разделе программы.
Максим Спасибо большое! Очень интересная и полезная статья.
sasha Спасибо за комментарий! Если написанная мной статья помогла, хоть одному человеку, значит, цель достигнута!
Михаил Здравствуйте, спасибо большое за статью. Только у меня вопрос возник, обязательно делать все это через mysql?Без нее никак?
sasha Можно использовать куки, и обойтись без БД и mysql, но это уже совсем другая структура… Когда будет время, обязательно напишу руководство, как сделать корзину используя куки.
Васёк была бы гостевая книга, регистрация и форум… цены бы не было) а так спасибо за инфу
sasha Я как раз думаю записать видео курс: как сделать интернет магазин с нуля. Учту Ваши пожелания
вуа Используйте не «Создать» слово а «сделать». Единобожники поймут! Создает только Единый Господь Бог!