Jump to content
  • 0

Форма обратной связи


rus
 Share

Question

Почему сообщение дублируется когда приходит на мыло?

<?

$date = date("d/m/Y");

$to = array(
'1' => 'test@test.ru');

session_start();
session_register("sn");

$_POST['name'] = substr(htmlspecialchars(trim($_POST['name'])), 0, 60);
$_POST['email'] = substr(htmlspecialchars(trim($_POST['email'])), 0, 30);
$_POST['tel'] = substr(htmlspecialchars(trim($_POST['tel'])), 0, 20);
$_POST['country1'] = substr(htmlspecialchars(trim($_POST['country1'])), 0, 30);
$_POST['country2'] = substr(htmlspecialchars(trim($_POST['country2'])), 0, 30);
$_POST['date1'] = substr(htmlspecialchars(trim($_POST['date1'])), 0, 10);
$_POST['date2'] = substr(htmlspecialchars(trim($_POST['date2'])), 0, 10);
$_POST['message'] = substr(htmlspecialchars(trim($_POST['message'])), 0, 1000);

if (empty($_POST['name']) or strlen($name) < 0)
{
echo
'<p>Вы не указали свои инициалы.

Пожалуйста, укажите ваше имя и фамилию!
</p>';
}

{
if(!preg_match("/[0-9a-z_]+@[0-9a-z_^.]+.[a-z]{2,3}/i", $_POST['email']))
echo
'<p>Email не был указан, или указан некорректный email.

Пожалуйста, укажите правильный email, это необходимо для связи с вами!
</p>';
}

if (empty($_POST['tel']) or strlen($tel) < 0)
{
echo
'<p>Вы не указали свой номер телефона.

Пожалуйста, укажите номер телефона, это необходимо для связи с вами!
</p>';
}

if ($_SERVER["REQUEST_METHOD"]=="POST") {
$error=0;
if ($_POST["secretcode"]!=$_SESSION["sc"] ||
intval($_POST["secretcode"])==0) $error=1;

if ($error==0) {
$_SESSION["secret_number"]=rand(1000,9999);

$toMail = $to[$_POST['to']];

$text = '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<title>Сообщение от '. $name . '</title>
<style media="screen" type="text/css">

table {
padding:5px;
margin:5px;
border:#E2E2E2 solid 2px;
width:500px;
}

td {
border:#E2E2E2 solid 1px;
width:100px;
padding:5px;
margin:5px;
}

body {
margin: 0;
padding: 6px;
border: 0;
background: #fff;
}
</style>
</head>
<body>
<table>
<tr>
<td colspan="2">ФИО отправителя: ' . $name = str_replace("n", "
", $name) . '</td>
</tr>
<tr>
<td colspan="2">Email отправителя: ' . $email = str_replace("n", "
", $email) . '</td>
</tr>
<tr>
<td colspan="2">Телефон отправителя: ' . $tel = str_replace("n", "
", $tel) . '</td>
</tr>
<tr>
<td colspan="2">Город куда лететь: ' . $country1 = str_replace("n", "
", $country1) . '</td>
</tr>
<tr>
<td colspan="2">Город откуда лететь: ' . $country2 = str_replace("n", "
", $country2) . '</td>
</tr>
<tr>
<td colspan="2">Дата вылета туда: ' . $date1 = str_replace("n", "
", $date1) . '</td>
</tr>
<tr>
<td colspan="2">Дата вылета обратно: ' . $date2 = str_replace("n", "
", $date2) . '</td>
</tr>
<tr>
<td colspan="2">Тип места: ' . $mesto . '</td>
</tr>
<tr>
<td colspan="2">Количество взрослых: ' . $vzrosl . '</td>
</tr>
<tr>
<td colspan="2">Количество молодежи: ' . $molodez . '</td>
</tr>
<tr>
<td colspan="2">Количество детей до 2-х лет: ' . $kind1 . '</td>
</tr>
<tr>
<td colspan="2">Количество детей до 12-ти лет: ' . $kind2 . '</td>
</tr>
<tr>
<td colspan="2">Комментарии к заказу: ' . $message = str_replace("n", "
", $message) . '</td>
</tr>
<tr>
<td><div style="line-height: 30px;">Дата отправки заказа: (' . $date . ')</div></td>
</tr>
</table>
</body>
</html>';

mail ($toMail, "$subject", "$text", "MIME-Version: 1.0n".
"Content-type: text/html; charset=windows-1251n".
'From: ' . $name . ' ');
print 'Сообщение успешно отправлено

<a href="java script:history.back(1)">Вернуться назад</a>';
exit;
}

if ($error==1)
print 'Число введено неверно

<a href="java script:history.back(1)">Вернуться назад</a>';
}
?>

P.S. в php еще пока не сильно рублю, но 90 процентов написанного понимаю, т.к. половину наверное этого кода сам дорабатывал под свои нужды, а вот оставшиеся 10 процентов не понимаю, а именно, почему оно приходит продублированным?

Link to comment
Share on other sites

Recommended Posts

  • 0
if ($_POST["secretcode"] == $_SESSION["sc"]){
mail('test@test.ru');
....
}

Но в тоже время выдает вот такую ошибку:

Warning: mail() expects at least 3 parameters, 1 given in Z:hometestwwwsendmail.php on line 50

Что я не так сделал?

Ны не взял букварь и не прочел первую страницу. Иди в дворники, программист!

Link to comment
Share on other sites

  • 0

to Emm:

Тьфу ты блин!!!

Если честно..., очень стыдно!

to homm:

см. подпись под аватарой!

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

Link to comment
Share on other sites

  • 0
см. подпись под аватарой!

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

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

Link to comment
Share on other sites

  • 0

Ну что ж, сам напросился!

Устроим так сказать небольшой бумсик...:)

Он себя считает мрачнее тучи и говорит что он здесь всех круче, после себя оставляет большие кучи!:)

Ну кто ж спорит, если его беднягу так и пучит?

Смотрю всегда последнее слово держишь за собой?

Так тебе в политику, ну или к этим...., критикам - там свою песню пой, раз ты такой герой!

Да и прочтение твоих постов никак не отразилось на моей нервной системе,

Ну и если говорить по этой теме...,

То вот это вот выражение "ЧУВАК" - ко мне не относится никак!

Да, и подходя ближе завершению всех этих бесполезных прений,

В тебе, разочарован я мой друг, к большому сожалению!

И наконец заканчивая со счетом rus-1:0-homm этот гейм,

Скажу:

- админы, перенесите пожалуйста эту тему во флейм!:)

Link to comment
Share on other sites

  • 0

to Dimitry Wolotko

&

to yopopt:

Спасибо конечно, но...

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

По мне так, homm, если ты считаешь эти разногласия как ссору, то я готов первым протянуть тебе "руку дружбы" хотя бы на правах старшего :)

Ты как?

Link to comment
Share on other sites

  • 0
rus. молодца, все правильно. может хомм добрый и пушистый - но где0-то очень глубоко, а так хам хамом

Ну что, по сему быть так. По крайней мере не я это затеял.

Ну что тут поделаешь, если где-то он и прав?

Я ведь "себя" не скоро нашел, перепробовал довольно много профессий, прежде чем начал заниматься сайтостроением.

И конечно стыдно, когда какой-нибудь мелкий шкет (не конкретно к человеку, а вообще) оказывается в чем-то превзошел тебя, а тем более в компьютерных делах. На дворе прогресс, а ты в этом оказывается полный ноль :)

Я в свое время не то чтобы о компьютере, а даже о велосипеде и не мечтал!

Link to comment
Share on other sites

  • 0
to Dimitry Wolotko

&

to yopopt:

Спасибо конечно, но...

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

По мне так, homm, если ты считаешь эти разногласия как ссору, то я готов первым протянуть тебе "руку дружбы" хотя бы на правах старшего :)

Ты как?

Мне даже интересно было прочитать, и знаешь, я поменял мнение :)

Тебе не в дворники, а в поэты нужны, но с таким знанием английского точно в программировании делать нечего.

И по твоей проблеме: в 3-й раз говорю. Прими письмо нормальным почтовиком, TheBat, MS Outlook, без разницы, сохрани его в файл и посмотри точно, приходит там 2 раза тело письма или нет. Меня просто поражает, как можно за столько времени не решить такую простейшую проблему.

Link to comment
Share on other sites

  • 0
Тебе не в дворники, а в поэты нужны, но с таким знанием английского точно в программировании делать нечего.

Стесняюсь спросить, а чем тебя не устраивает мой прононс :) на английском?

А программирование лично для меня это не статус, а прежде всего удовольствие и способ заработать денежку.

В поэты точно не пойду - там мало платят, а мне семью кормить.

А вот работать дворником для меня вовсе не оскорбительно, они кстати, неплохо зарабатывают, да и в этом нет ничего унизительного!

Kichee (если я не ошибаюсь, во флейме в каком-то посте прочитал) работает же грузчиком и ничего! Homm, любая профессия - это прежде всего твой личный опыт, который тебе же в жизни пригодится, а как известно чем больше опыта, тем лучше.:)

И по твоей проблеме: в 3-й раз говорю. Прими письмо нормальным почтовиком, TheBat, MS Outlook, без разницы, сохрани его в файл и посмотри точно, приходит там 2 раза тело письма или нет. Меня просто поражает, как можно за столько времени не решить такую простейшую проблему

Да спасибо, уже решил проблему..., не без помощи конечно добрых людей.:)

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. See more about our Guidelines and Privacy Policy