В чем может быть проблема?
Спустя 3 минуты, 23 секунды (29.12.2009 - 14:03) DedMorozzz написал(а):
Может заглушка? Проверь. Кадато с таким сталкивался. Все письма были на заглушке, т.е. на компе.
Спустя 8 минут, 7 секунд (29.12.2009 - 14:12) seine написал(а):
ну, на компе - да, стоит заглушка. я с помощью нее и проверяю отправляются письма или нет, и что в них содержится.
они с сервера они не шлются
они с сервера они не шлются
Спустя 1 минута, 17 секунд (29.12.2009 - 14:13) glock18 написал(а):
Сервер может быть в блэклисте.
Спустя 9 минут, 49 секунд (29.12.2009 - 14:23) inpost написал(а):
Ты лучше скинь скрипт, как ты письма отправляешь, так как твой сервер может использовать стандартный обратный адрес, как например на моем, "nobody", и в итоге блокируется, поэтому в mail() надо прописать и обратный адрес, тогда сервер будет получать нормально письма.
Если не использовать уникальный обратный адрес, то некоторые почтовые сервисы твои сообщения принимают за спам.
Попробуй с моим рабочим скриптом:
Если не использовать уникальный обратный адрес, то некоторые почтовые сервисы твои сообщения принимают за спам.
Попробуй с моим рабочим скриптом:
if(substr(PHP_OS, 0, 3) == "WIN")
$n = "\r\n";
else
$n = "\n";
$to = 'my@list.ru';
$from = 'my@list.ru';
$headers = 'Content-type:text/plain; Charset=windows-1251\r\n'. $n;
$headers .= 'From: <'. $from .'>'. $n;
$headers .= 'MIME-Version: 1.0'. $n;
$headers .= 'Date: '. date('D, d M Y h:i:s O') . $n;
$message = $text_message."\nС уважением, ".$name."\nМой e-mail: ".$email."";
mail($to, $subject, $message, $headers, '-f'. $from );
Спустя 2 минуты, 23 секунды (29.12.2009 - 14:25) seine написал(а):
в php.ini есть
; For Unix only. You may supply arguments as well (default: "sendmail -t -i").
; http://php.net/sendmail-path
;sendmail_path =
т.е. мне надо в .htaccess написать
php_value sendmail_path /usr/sbin/sendmail
/usr/sbin/sendmail - путь к sendmail на сервере
; For Unix only. You may supply arguments as well (default: "sendmail -t -i").
; http://php.net/sendmail-path
;sendmail_path =
т.е. мне надо в .htaccess написать
php_value sendmail_path /usr/sbin/sendmail
/usr/sbin/sendmail - путь к sendmail на сервере
Спустя 4 минуты, 2 секунды (29.12.2009 - 14:29) seine написал(а):
Цитата (inpost @ 29.12.2009 - 11:23) |
использовать стандартный обратный адрес, как например на моем, "nobody", и в итоге блокируется, поэтому в mail() |
Чувак спасибо, проблема была связна с этим. Обратный адрес был вида info@mysite а вот .ru забыл поставить!
сделал info@mysite.ru и заработало
блин, из-за такой фигни не работало!
Спустя 1 час, 9 минут, 58 секунд (29.12.2009 - 15:39) seine написал(а):
Письмо отправляется, но возникл другая проблема. Не хотел создавать новую тему, похожего направления, хотя может и стоило бы это сделать.
Так вот, письмо приходит, а в заголовке вместо русских букв вопросики (????)
вот начало письма
страница, с которой шлется письмо в кодировке cp1251, но заголовок ведь должен быть в utf-8, поэтому с заголовоком делаю
хотя, когда было без строки iconv тоже вопросики были.
Так вот, письмо приходит, а в заголовке вместо русских букв вопросики (????)
вот начало письма
Subject: =?utf-8?b?wuDsIO3g7+jx4OvoIO3gIHRlaG5vcGFyay15dWcucnU=?=
To: почта@mail.ru
X-PHP-Originating-Script: 0:feedback.php
Content-type: text/plan; charset="windows-1251"
MIME-Version: 1.0
From: <info@сайт.ru>
Date: 29 Dec 2009 12:33:15
страница, с которой шлется письмо в кодировке cp1251, но заголовок ведь должен быть в utf-8, поэтому с заголовоком делаю
iconv('windows-1251', 'utf-8', $subject);
$subject = '=?utf-8?b?'.base64_encode($subject).'?=';
хотя, когда было без строки iconv тоже вопросики были.
Спустя 6 минут, 43 секунды (29.12.2009 - 15:46) twin написал(а):
Тут поройся
Спустя 10 минут, 52 секунды (29.12.2009 - 15:57) seine написал(а):
Цитата (twin @ 29.12.2009 - 12:46) |
Тут поройся |
О, спасибо twin, полдня искал эту статью. На самом деле лучшая статья, из тех, что я читал про mail().
Я ж свой скрипт на основании ее и делал! Щас всю ее просмотрел, про преобразование заголовка только это есть
subject = '=?utf-8?b?'. base64_encode($subject) .'?=';
банальный скрипт (остальное не имеет значения)
<?php
$to = 'mail@mail.ru';
$subject = 'Табе пакет';
$subject = "=?utf-8?b?". base64_encode($subject) ."?=";
$message = 'messege';
mail($to, $subject, $message);
?>
присылает заголовок с вопросами.
еще раз повторюсь у меня на странице и сам скрипт написан в кодирровке cp1251, я на нее грешу.
Спустя 22 минуты, 31 секунда (29.12.2009 - 16:19) twin написал(а):
Ну ты же кодируешь его в утф $subject = "=?utf-8?b?". base64_encode($subject) ."?="; Поставь свою кодировку туда.
Спустя 23 минуты, 2 секунды (29.12.2009 - 16:42) inpost написал(а):
Обе страницы сохранил в 'windows-1251', так же и кодировки на обоих страницах тоже 'windows-1251'.
Все отправляется нормально!
Все отправляется нормально!
<?php session_start();
header("Content-Type: text/plain; charset=windows-1251");
if (isset($_POST['name'])) {$name = $_POST['name'];}
if (isset($_POST['email'])) {$email=$_POST['email'];}
if (isset($_POST['subject'])) {$subject = $_POST['subject'];}
if (isset($_POST['text_message'])) {$text_message=$_POST['text_message'];}
$name = iconv('utf-8', 'windows-1251', $name);
$subject = iconv('utf-8', 'windows-1251', $subject);
$text_message = iconv('utf-8', 'windows-1251', $text_message);
if(substr(PHP_OS, 0, 3) == "WIN")
$n = "\r\n";
else
$n = "\n";
$to = 'inpost@list.ru';
$from = 'inpost@list.ru';
$headers = 'Content-type:text/plain; Charset=windows-1251\r\n'. $n;
$headers .= 'From: <'. $from .'>'. $n;
$headers .= 'MIME-Version: 1.0'. $n;
$headers .= 'Date: '. date('D, d M Y h:i:s O') . $n;
$message = $text_message."\nС уважением, ".$name."\nМой e-mail: ".$email."";
mail($to, $subject, $message, $headers, '-f'. $from );
?>
Спустя 13 дней, 15 часов, 56 минут, 17 секунд (13.01.2010 - 08:39) Иззат написал(а):
Не могу собрать сообщение для отправки через PHP.
HTML-код (anketa.htm):
<form action="obrabotka.php" method="POST" name="form1">
<p>
<b>Ваш пол:</b>
<input type="radio" name="pol" value="muzh">Мужской
<input type="radio" name="pol" value="zhen">Женский
</p>
<p>
<b>Ваш возраст:</b>
<input type="radio" name="vozv" value="до 25 лет">до 25 лет
<input type="radio" name="vozv" value="от 26 до 30 лет">от 26 до 30 лет
<input type="radio" name="vozv" value="от 31 до 35 лет">от 31 до 35 лет
<input type="radio" name="vozv" value="от 36 до 40 лет">от 36 до 40 лет
<input type="radio" name="vozv" value="от 41 до 45 лет">от 41 до 45 лет
<input type="radio" name="vozv" value="от 46 лет">от 46 лет
</p>
<p>
<b>Ваше образование:</b>
<input type="radio" name="obraz" value="Среднее">Среднее
<input type="radio" name="obraz" value="Средне-специальное">Средне-специальное
<input type="radio" name="obraz" value="Неоконченное высшее">Неоконченное высшее
<input type="radio" name="obraz" value="Высшее">Высшее
<input type="radio" name="obraz" value="Два и более высших">Два и более высших
</p>
<p>
<b>Семейное положение:</b>
<input type="radio" name="semya" value="zhenat">женат/замужем
<input type="radio" name="semya" value="nezhenat">не женат/не замужем
<input type="radio" name="semya" value="razveden">разведен/разведена
<input type="radio" name="semya" value="vdovec">вдовец/вдова
</p>
<p>
<input type="submit" name="button" value="Отправить анонимные данные">
</p>
</form>
Файл обработки (obrabotka.php):
<?php
mail("test@test.ru","Анкета удовлетворённости персонала","Пол: $pol Возраст: $vozv Образование: $obraz Семейное положение $semya ","Content-type:text/plain; charset = windows-1251\r\n");
?>
Оба файла находятся в одном каталоге.
Приходит сообщение без значения переменных:
Пол: Возраст: Образование: Семейное положение
плз, помогите.
HTML-код (anketa.htm):
<form action="obrabotka.php" method="POST" name="form1">
<p>
<b>Ваш пол:</b>
<input type="radio" name="pol" value="muzh">Мужской
<input type="radio" name="pol" value="zhen">Женский
</p>
<p>
<b>Ваш возраст:</b>
<input type="radio" name="vozv" value="до 25 лет">до 25 лет
<input type="radio" name="vozv" value="от 26 до 30 лет">от 26 до 30 лет
<input type="radio" name="vozv" value="от 31 до 35 лет">от 31 до 35 лет
<input type="radio" name="vozv" value="от 36 до 40 лет">от 36 до 40 лет
<input type="radio" name="vozv" value="от 41 до 45 лет">от 41 до 45 лет
<input type="radio" name="vozv" value="от 46 лет">от 46 лет
</p>
<p>
<b>Ваше образование:</b>
<input type="radio" name="obraz" value="Среднее">Среднее
<input type="radio" name="obraz" value="Средне-специальное">Средне-специальное
<input type="radio" name="obraz" value="Неоконченное высшее">Неоконченное высшее
<input type="radio" name="obraz" value="Высшее">Высшее
<input type="radio" name="obraz" value="Два и более высших">Два и более высших
</p>
<p>
<b>Семейное положение:</b>
<input type="radio" name="semya" value="zhenat">женат/замужем
<input type="radio" name="semya" value="nezhenat">не женат/не замужем
<input type="radio" name="semya" value="razveden">разведен/разведена
<input type="radio" name="semya" value="vdovec">вдовец/вдова
</p>
<p>
<input type="submit" name="button" value="Отправить анонимные данные">
</p>
</form>
Файл обработки (obrabotka.php):
<?php
mail("test@test.ru","Анкета удовлетворённости персонала","Пол: $pol Возраст: $vozv Образование: $obraz Семейное положение $semya ","Content-type:text/plain; charset = windows-1251\r\n");
?>
Оба файла находятся в одном каталоге.
Приходит сообщение без значения переменных:
Пол: Возраст: Образование: Семейное положение
плз, помогите.
Спустя 1 день, 14 часов, 13 минут, 55 секунд (14.01.2010 - 22:52) inpost написал(а):
$pol= $_POST['pol'];
проделай это со всеми значениями.
проделай это со всеми значениями.