1. Главная страница » Как сделать...? » Оформление заказа и отправка данных на почту

Оформление заказа и отправка данных на почту

Автор: | 14.02.2013

Файл: «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

Обзор таблицы: «posetiteli»

Обзор таблицы posetiteli

Структура таблицы: «tovari»

Структура таблицы tovari

Обзор таблицы: «tovari»

Обзор таблицы tovari

Структура таблицы: «vibranie_tovari»

Структура таблицы vibranie tovari

Обзор таблицы: «vibranie_tovari»

Обзор таблицы vibranie tovari

Скачать архив с таблицами, файлами и папкой с изображениями вы можете в разделе программы.

1 2 3 4 5

Оформление заказа и отправка данных на почту: 7 комментариев

  1. Максим

    Максим Спасибо большое! Очень интересная и полезная статья.

  2. sasha

    sasha Спасибо за комментарий! Если написанная мной статья помогла, хоть одному человеку, значит, цель достигнута!

  3. Михаил

    Михаил Здравствуйте, спасибо большое за статью. Только у меня вопрос возник, обязательно делать все это через mysql?Без нее никак?

  4. sasha

    sasha Можно использовать куки, и обойтись без БД и mysql, но это уже совсем другая структура… Когда будет время, обязательно напишу руководство, как сделать корзину используя куки.

  5. Васёк

    Васёк была бы гостевая книга, регистрация и форум… цены бы не было) а так спасибо за инфу

  6. sasha

    sasha Я как раз думаю записать видео курс: как сделать интернет магазин с нуля. Учту Ваши пожелания  

  7. вуа

    вуа Используйте не «Создать» слово а «сделать». Единобожники поймут!  Создает только Единый Господь Бог!

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

*

code