<h2>Оставить заявку</h2>
<?php
function show_form()
{
?>
<form action="" method=post enctype="multipart/form-data">
<div style="padding-right:20px; padding-left: 40px;">
<table border="0">
<tr>
<td style="width:158px">Ваше имя <span style="color: red">*</span>:</td>
<td><input type="text" name="name" style="width:350px" value=""></td>
</tr>
<tr>
<td>E-mail <span style="color: red">*</span>:</td>
<td><input type="text" name="email" style="width:350px" value=""></td>
</tr>
<tr>
<td>Телефон:</td>
<td><input type="text" name="tel" style="width:350px" value=""></td>
</tr>
<tr>
<td>Тема:</td>
<td><input type="text" name="title" style="width:350px" value=""></td>
</tr>
<tr>
<td>Описание объекта:</td> <td><textarea name="mess" style="width:350px" rows="10"></textarea></td>
</tr>
<tr>
<td>Добавить фотографию: <br>
</td>
<td>
<input name="attachimage" type="file" size="28">
</td>
</tr>
<tr>
<td>Добавить архив: <br>
</td>
<td>
<input name="attachfile" type="file" size="28">
</td>
</tr>
<tr>
<td colspan="2" style="color: red">
* - поля обязательные для заполнения<br>
Для добавления нескольких фото воспользуйтесь функцией "Добавить архив" прикрепив архив с фото.
</td>
</tr>
<tr>
<td colspan="2" style="text-align:center; font-size: 16px">
<br><br>
<input type="submit" value="Отправить" name="submit">
</td>
</tr>
</table>
</div>
</form>
<?
}
$rs = mysql_query("SELECT * FROM customers WHERE customer_id='25'");
for ($c=0; $c<mysql_num_rows($rs); $c++)
{
$f = mysql_fetch_array($rs);
//echo "$f[email] $f[name] <br>";
}
$email_admin = $f[email];
var_dump($email_admin);
function complete_mail() {
// $_POST['title'] содержит данные из поля "Тема", trim() - убираем все лишние пробелы и переносы строк, htmlspecialchars() - преобразует специальные символы в HTML сущности, будем считать для того, чтобы простейшие попытки взломать наш сайт обломались, ну и substr($_POST['title'], 0, 1000) - урезаем текст до 1000 символов. Для переменных $_POST['mess'], $_POST['name'], $_POST['tel'], $_POST['email'] все аналогично
$_POST['title'] = substr(htmlspecialchars(trim($_POST['title'])), 0, 1000);
$_POST['mess'] = substr(htmlspecialchars(trim($_POST['mess'])), 0, 1000000);
$_POST['name'] = substr(htmlspecialchars(trim($_POST['name'])), 0, 30);
$_POST['tel'] = substr(htmlspecialchars(trim($_POST['tel'])), 0, 30);
$_POST['email'] = substr(htmlspecialchars(trim($_POST['email'])), 0, 50);
// если не заполнено поле "Имя" - показываем ошибку 0
if (empty($_POST['name']))
output_err(0);
// если неправильно заполнено поле email - показываем ошибку 1
if(!preg_match("/[0-9a-z_]+@[0-9a-z_^\.]+\.[a-z]{2,3}/i", $_POST['email']))
output_err(1);
// если не заполнено поле "Сообщение" - показываем ошибку 2
if(empty($_POST['mess']))
output_err(2);
// обратите внимание, теперь мы можем писать красивые письма, с помощью html тегов ;-)
$mess = '
<b>Имя отправителя:</b>'.$_POST['name'].'<br />
<b>Контактный телефон:</b>'.$_POST['tel'].'<br />
<b>Контактный email:</b>'.$_POST['email'].'<br />
'.$_POST['mess'];
// подключаем файл класса для отправки почты
require 'class.phpmailer.php';
$mail = new PHPMailer();
$mail->From = '[email protected]'; // от кого
$mail->FromName = 'palmira.center'; // от кого
$mail->AddAddress($email_admin); // кому - адрес, Имя
$mail->IsHTML(true); // выставляем формат письма HTML
$mail->Subject = $_POST['title']; // тема письма
// если был файл, то прикрепляем его к письму
if(isset($_FILES['attachfile'])) {
if($_FILES['attachfile']['error'] == 0){
$mail->AddAttachment($_FILES['attachfile']['tmp_name'], $_FILES['attachfile']['name']);
}
}
// если было изображение, то прикрепляем его в виде картинки к телу письма.
if(isset($_FILES['attachimage'])) {
if($_FILES['attachimage']['error'] == 0){
if (!$mail->AddEmbeddedImage($_FILES['attachimage']['tmp_name'], 'my-attach', 'image.gif', 'base64', $_FILES['attachimage']['type']))
die ($mail->ErrorInfo);
$mess .= '<br /><img src="cid:my-attach" border=0><br />';
}
}
$mail->Body = $mess;
// отправляем наше письмо
if (!$mail->Send()) die ('Mailer Error: '.$mail->ErrorInfo);
echo 'Спасибо! Ваша заявка отправлена. В скором времени с Вами свяжется наш консультант.';
}
function output_err($num)
{
$err[0] = 'ОШИБКА! Не введено имя.';
$err[1] = 'ОШИБКА! Неверно введен e-mail.';
$err[2] = 'ОШИБКА! Не введено сообщение.';
echo '<p>'.$err[$num].'</p>';
show_form();
exit();
}
if (!empty($_POST['submit'])) complete_mail();
else show_form();
?>