[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: MAIL.PHP - Обратная СВЯЗЬ
Гость_Александр
Где ошибка?! Письма почему то не приходят :( или я что-то не так сделал? Сайт на http://www.webservis.ru...на бесплатном хостинге!!! ХелпМи!


obratnaya_svyaz.html
<table cellspacing="0">

<form
action=mail.php method=post>
<tr><td>
Ваше имя:</td><td><input type=text name=name size=30></td> </tr>

<tr><td>
Ваш e-mail:</td><td><input type=text name=email size=30></tr>
<tr> <td>
Ваш Телефон: </td> <td><input type=text name=telefone size=30> </td></tr>
<tr><td>
Ваше сообщение:</td><td><textarea name=mess rows=10 cols=50></textarea></td></tr>
<tr><td><input
type=submit value="Отправить сообщение"></td><td> </td></tr>
</form>
</table>
</div>



<?php
if (isset ($name))
{
$name = substr($name,0,20); //Не может быть более 20 символов
if (empty($name))
{
echo "<center><b>Не указано имя !!!<p>";
echo "<a href=index.html>Вернуться и правильно заполнить форму.</a>";
exit;
}
}

else
{
$name = "не указано";
}
if (isset ($email))
{
$email = substr($email,0,20); //Не может быть более 20 символов
if (empty($email))
{
echo "<center><b>Не указан e-mail !!!<p>";
echo "<a href=index.php>Вернуться и правильно заполнить форму.</a>";
exit;
}
}

else
{
$email = "не указано";
}
if (isset ($telefone))
{
$telefone = substr($telefone,0,20); //Не может быть более 20 символов
if (empty($telefone))
{
echo "<center><b>Не указан телефон !!!<p>";
echo "<a href=index.php>Вернуться и правильно заполнить форму.</a>";
exit;
}
}

else
{
$telefone = "не указано";
}
if (isset ($mess))
{
$mess = substr($mess,0,1000); //Не может быть более 1000 символов
if (empty($mess))
{
echo "<center><b>Сообщение не написано !!!<p>";
echo "<a href=index.html>Вернуться и правильно заполнить форму.</a>";
exit;
}
}

else
{
$mess = "не указано";
}
$i = "не указано";
if ($name == $i AND $email == $i AND $mess == $i)
{
echo "Ошибка ! Скрипту не были переданы параметры !";
exit;
}
$to = "domofon2000@yandex.ru";
$subject = "Сообщение с вашего интернет-сайта";
$message = "Имя пославшего:$name::::::::::Электронный адрес:$email::::::::::Сообщение:$mess:::::::::IP-адрес:$REMOTE_ADDR";
mail ($to,$subject,$message) or print "Не могу отправить письмо !!!";
echo "<center><b>Спасибо за отправку вашего сообщения<a href=index.html>Нажмите</a>, что бы вернуться на главную...>";
exit;
?>




Спустя 7 минут, 16 секунд (8.10.2012 - 21:43) Winston написал(а):
При использовании mail желательно указывать заголовки

$to = 'mail@mail.ru';
$subject = '=?utf-8?b?'. base64_encode('Сообщение с вашего интернет-сайта') .'?=';
$headers = "Content-type: text/html; charset=\"utf-8\"\r\n";
$headers .= "From: Здесь впиши свое мыло от которого идет рассылка\r\n";
$headers .= "MIME-Version: 1.0\r\n";
$headers .= "Date: ". date("D, j M Y H:i:s") ."\r\n";
$text = 'Сообщение';

mail($to, $subject, $text, $headers);

В заголовке From подставь существующее мыло

Спустя 8 часов, 23 минуты, 24 секунды (9.10.2012 - 06:07) Гость_Александр написал(а):
Winston
Указал свой email:domofon2000@yandex.ru только сообщений нет... :unsure: неужели это безнодежный код :( сам уже не понимаю в чем проблема... <_<

<?php
if (isset ($name))
{
$name = substr($name,0,20); //Не может быть более 20 символов
if (empty($name))
{
echo "<center><b>Не указано имя !!!<p>";
echo "<a href=index.html>Вернуться и правильно заполнить форму.</a>";
exit;
}
}

else
{
$name = "не указано";
}
if (isset ($email))
{
$email = substr($email,0,20); //Не может быть более 20 символов
if (empty($email))
{
echo "<center><b>Не указан e-mail !!!<p>";
echo "<a href=index.php>Вернуться и правильно заполнить форму.</a>";
exit;
}
}

else
{
$email = "не указано";
}
if (isset ($telefone))
{
$telefone = substr($telefone,0,20); //Не может быть более 20 символов
if (empty($telefone))
{
echo "<center><b>Не указан телефон !!!<p>";
echo "<a href=index.php>Вернуться и правильно заполнить форму.</a>";
exit;
}
}

else
{
$telefone = "не указано";
}
if (isset ($mess))
{
$mess = substr($mess,0,1000); //Не может быть более 1000 символов
if (empty($mess))
{
echo "<center><b>Сообщение не написано !!!<p>";
echo "<a href=index.html>Вернуться и правильно заполнить форму.</a>";
exit;
}
}

else
{
$mess = "не указано";
}
$i = "не указано";
if ($name == $i AND $email == $i AND $mess == $i)
{
echo "Ошибка ! Скрипту не были переданы параметры !";
exit;
}
$to = "domofon2000@yandex.ru";
$subject = "=?utf-8?b?'. base64_encode('Сообщение с вашего интернет-сайта') .'?=";
$headers = "Content-type: text/html; charset=\"utf-8\"\r\n";
$headers .= "From: domofon2000@yandex.ru\r\n";
$headers .= "MIME-Version: 1.0\r\n";
$headers .= "Date: ". date("D, j M Y H:i:s") ."\r\n";
$text = "Сообщение";

mail($to, $subject, $text, $headers) or print "Не могу отправить письмо !!!";
echo "<center><b>Спасибо за отправку вашего сообщения<a href=index.html>Нажмите</a>, что бы вернуться на главную...>";
exit;
?>

Спустя 44 минуты, 42 секунды (9.10.2012 - 06:51) GET написал(а):
Цитата
$subject = '=?utf-8?b?'. base64_encode('Сообщение с вашего интернет-сайта') .'?=';

" != '
$subject = '=?utf-8?b?'. base64_encode('Сообщение с вашего интернет-сайта') .'?=';

$headers .= "From: <domofon2000@yandex.ru>\r\n";

Спустя 1 час, 38 секунд (9.10.2012 - 07:52) Guest написал(а):
Что то туплю....не может мне форма письмо прислать :(
ИСПРАВИЛ ОШИБКИ!
ХелпМИ мастера PHP сегодня уже на пару нести надо :)
exit;
}
$to = "domofon2000@yandex.ru";
$subject = '=?utf-8?b?'. base64_encode('Сообщение с вашего интернет-сайта') .'?=';
$headers .= 'MIME-Version: 1.0'. "\r\n";
$headers .= 'Content-type: text/html; charset=utf-8'. "\r\n";
$headers .= "From: <domofon2000@yandex.ru>\r\n";
$headers .= "Date: ". date("D, j M Y H:i:s") ."\r\n";
$text = "Сообщение";

mail($to, $subject, $text, $headers) or print "Не могу отправить письмо !!!";
echo "<center><b>Спасибо за отправку вашего сообщения<a href=index.html>Нажмите</a>, что бы вернуться на главную...>";
exit;
?>


Спустя 16 минут (9.10.2012 - 08:08) GET написал(а):
Guest



Цитата
$headers .= 'MIME-Version: 1.0'. "\r\n";


точечку убери :)

$headers = 'MIME-Version: 1.0'. "\r\n";

Спустя 59 минут, 48 секунд (9.10.2012 - 09:08) Guest написал(а):
Форма не отправляет похоже что дело не в коде... wink.gif Из-за чего еще отправлять не может?

Спустя 32 минуты, 42 секунды (9.10.2012 - 09:40) Winston написал(а):
Ты уверен, что на твоем бесплатном хостинге доступна mail?
На локалке протестируй

Спустя 5 минут, 24 секунды (9.10.2012 - 09:46) GET написал(а):
Guest

Я у себя пробывал на локальном вот этот твой кусок
Цитата
exit;
}
$to = "domofon2000@yandex.ru";
$subject = '=?utf-8?b?'. base64_encode('Сообщение с вашего интернет-сайта') .'?=';
$headers .= 'MIME-Version: 1.0'. "\r\n";
$headers .= 'Content-type: text/html; charset=utf-8'. "\r\n";
$headers .= "From: <domofon2000@yandex.ru>\r\n";
$headers .= "Date: ". date("D, j M Y H:i:s") ."\r\n";
$text = "Сообщение";

mail($to, $subject, $text, $headers) or print "Не могу отправить письмо !!!";
echo "<center><b>Спасибо за отправку вашего сообщения<a href=index.html>Нажмите</a>, что бы вернуться на главную...>";
exit;
?>


только с $headers = 'MIME-Version: 1.0'. "\r\n";

все работает.

Спустя 27 минут, 11 секунд (9.10.2012 - 10:13) Guest написал(а):
ABC Спасибо! Выручил!

Спустя 1 минута, 28 секунд (9.10.2012 - 10:14) Guest написал(а):
WinstonВы правы! Залил сайт на .hostinger.ru все заработало! СПАСИБО ВСЕМ ОГРОМНОЕ я на пару! отпишусь сколько балов дали за код!

Спустя 2 минуты, 44 секунды (9.10.2012 - 10:17) REALMEN72 написал(а):
Надо будет зарегиться тут!
Оеративность и адекватность людей на форуме просто радует! ABC,Winston Еще раз респект!

Спустя 6 минут, 46 секунд (9.10.2012 - 10:24) REALMEN72 написал(а):
Странно у меня опять ошибку выдал:
Ошибка ! Скрипту не были переданы параметры !

<?php
if (isset ($name))
{
$name = substr($name,0,20); //Не может быть более 20 символов
if (empty($name))
{
echo "<center><b>Не указано имя !!!<p>";
echo "<a href=index.html>Вернуться и правильно заполнить форму.</a>";
exit;
}
}

else
{
$name = "не указано";
}
if (isset ($email))
{
$email = substr($email,0,20); //Не может быть более 20 символов
if (empty($email))
{
echo "<center><b>Не указан e-mail !!!<p>";
echo "<a href=index.php>Вернуться и правильно заполнить форму.</a>";
exit;
}
}

else
{
$email = "не указано";
}
if (isset ($phone))
{
$telefone = substr($phone,0,20); //Не может быть более 20 символов
if (empty($phone))
{
echo "<center><b>Не указан телефон !!!<p>";
echo "<a href=index.php>Вернуться и правильно заполнить форму.</a>";
exit;
}
}

else
{
$telefone = "не указано";
}
if (isset ($mess))
{
$mess = substr($mess,0,1000); //Не может быть более 1000 символов
if (empty($mess))
{
echo "<center><b>Сообщение не написано !!!<p>";
echo "<a href=index.html>Вернуться и правильно заполнить форму.</a>";
exit;
}
}

else
{
$mess = "не указано";
}
$i = "не указано";
if ($name == $i AND $email == $i AND $mess == $i)
{
echo "Ошибка ! Скрипту не были переданы параметры !";
exit;
}
$to = "domofon2000@yandex.ru";
$subject = '=?utf-8?b?'. base64_encode('Сообщение с вашего интернет-сайта') .'?=';
$headers .= 'MIME-Version: 1.0'. "\r\n";
$headers .= 'Content-type: text/html; charset=utf-8'. "\r\n";
$headers .= "From: <domofon2000@yandex.ru>\r\n";
$headers .= "Date: ". date("D, j M Y H:i:s") ."\r\n";
$text = "Сообщение";

mail($to, $subject, $text, $headers) or print "Не могу отправить письмо !!!";
echo "<center><b>Спасибо за отправку вашего сообщения<a href=index.html>Нажмите</a>, что бы вернуться на главную...>";
exit;
?>

Спустя 38 минут, 54 секунды (9.10.2012 - 11:03) GET написал(а):
Цитата
$i = "не указано";
if ($name == $i AND $email == $i AND $mess == $i)
{


поставь
$i = "не указано";
echo $name.'-'.$email.'-'.$mess;
if ($name == $i AND $email == $i AND $mess == $i)


посмотри чего он тебе напишет.

И ошибку
Цитата
$headers .= 'MIME-Version: 1.0'. "\r\n";


ты так и не исправил.

и вообще по логике надо ставить не AND, а || т.е. ИЛИ. Вообще код весь кривой с неприятным для глаза синтаксисом. ;)


Спустя 1 день, 23 часа, 54 минуты, 49 секунд (11.10.2012 - 10:58) REALMEN написал(а):
Всем спасибо! Получил 75 баллов за работу!


ABC
Цитата
и вообще по логике надо ставить не AND, а || т.е. ИЛИ. Вообще код весь кривой с неприятным для глаза синтаксисом. wink.gif


Из-за этого снизили баллы! wink.gif

1. Добавить форму для прикрепления файла
2. Поле E-mail может не заполняться! То есть быть пустым!

Спустя 15 минут, 8 секунд (11.10.2012 - 11:13) REALMEN написал(а):
2. Поле E-mail может не заполняться! То есть быть пустым!
Я так понел за проверку на наличие email отвечает

if (empty($email)) {
echo "<center><b>Не указан E-mail !!!<p>";
echo "<a href=obratnaya_svyaz.html>Вернуться и правильно заполнить форму.</a>";
exit;

Его я убрал




mail.php
<?php

$name = '';
$email = '';
$phone = '';
$mess = '';
if (isset($_POST['name'])) {
$name = substr($_POST['name'], 0, 20); //Не может быть более 20 символов
}
if (empty($name)) {
echo "<center><b>Не указано имя !!!<p>";
echo "<a href=obratnaya_svyaz.html>Вернуться и правильно заполнить форму.</a>";
exit;
}
if (isset($_POST['email'])) {
$email = substr($_POST['email'], 0, 20); //Не может быть более 20 символов
}
if (isset($_POST['phone'])) {
$phone = substr($_POST['phone'], 0, 20); //Не может быть более 20 символов
}
if (empty($phone)) {
echo "<center><b>Не указан телефон !!!<p>";
echo "<a href=obratnaya_svyaz.html>Вернуться и правильно заполнить форму.</a>";
exit;
}
if (isset($_POST['mess'])) {
$mess = substr($_POST['mess'], 0, 1000); //Не может быть более 1000 символов
}
if (empty($mess)) {
echo "<center><b>Сообщение не написано !!!<p>";
echo "<a href=obratnaya_svyaz.html>Вернуться и правильно заполнить форму.</a>";
exit;
}
$to = "domofon2000@yandex.ru";
$subject = '=?utf-8?b?' . base64_encode('Сообщение с вашего интернет-сайта') . '?=';
$text = "$name \n $email \n $phone \n $mess\n";
var_dump(mail($to, $subject, $text, $headers));
echo "<center><b>Спасибо за отправку вашего сообщения<a href='/index.html'>Нажмите</a>, что бы вернуться на главную...>";
exit;


+ Мы поменялись кодами с напарником :) Форма работает! проверенно! Обмен совершен не по собственному желанию приказ препода :(

1. Добавить форму для прикрепления файла! - тут даже не знаю с чего начать :(
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.