Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Отправка сообщения при помощи функции mail()
 
 автор: dima2207   (21.02.2007 в 17:19)   письмо автору
 
 

подскажите почему не происходит отправка сообщения ???

<?php
$var['recip_n']="mail@mail.ru";
$var['recip_e']="mail1@mail.ru";
$var['subj']="----------------------------";

$var['subj'] = "=?Windows-1251?B?"."dima2207@mail.ru";//trim(imap_binary(htmltoform($_POST['subject'])))."?=";
$var['header'] = "From: =?Windows-1251?B?";//.mail_convert(htmltoform($_POST['name']))."?= <".$_POST['email'].">\r\n";
$var['header'] .= "MIME-Version: 1.0\r\n";
$var['header'] .= "Content-Transfer-Encoding: 8bit\r\n";
$var['header'] .= "Content-Type: text/plain; charset=\"Windows-1251\"\r\n";
$var['header'] .= "Mailer: PHP v.".phpversion();
// $var['message'] = htmltoform($_POST['message']);
//if (!empty($config['features']))
$var['message'] .= "\r\n\r\nСистема востановления пароля сайта . \r\nВаш пароль указанный при регистрации: ".$_POST['password'];
# Пытаемся послать сообщение
mail("=?Windows-1251?B?".$var['recip_n']."?=<".$var['recip_e'].">",$var['subj'],$var['message'],$var['header']);
?>

   
 
 автор: ZuArt   (21.02.2007 в 17:22)   письмо автору
 
   для: dima2207   (21.02.2007 в 17:19)
 


<?php
$var
['recip_n']="mail@mail.ru";
$var['recip_e']="mail1@mail.ru";
$var['subj']="----------------------------";

$var['subj'] = "=?Windows-1251?B?"."dima2207@mail.ru";//trim(imap_binary(htmltoform($_POST['subject'])))."?=";
$var['header'] = "From: =?Windows-1251?B?";//.mail_convert(htmltoform($_POST['name']))."?= <".$_POST['email'].">\r\n";
$var['header'] .= "MIME-Version: 1.0\r\n";
$var['header'] .= "Content-Transfer-Encoding: 8bit\r\n";
$var['header'] .= "Content-Type: text/plain; charset=\"Windows-1251\"\r\n";
$var['header'] .= "Mailer: PHP v.".phpversion();
// $var['message'] = htmltoform($_POST['message']);
//if (!empty($config['features']))
$var['message'] .= "\r\n\r\nСистема востановления пароля сайта . \r\nВаш пароль указанный при регистрации: ".$_POST['password'];
# Пытаемся послать сообщение
mail([b]"=?Windows-1251?B?".$var['recip_n']."?=<".$var['recip_e'].">"[/b],$var['subj'],$var['message'],$var['header']);
?>


а выделенные части текста обязательно так извращаться??? есть непримиримые основания писать именно ТАК?

   
 
 автор: Trianon   (21.02.2007 в 17:33)   письмо автору
 
   для: ZuArt   (21.02.2007 в 17:22)
 

А что там нетипичного? base64 вместо quoted-printable?

   
 
 автор: ZuArt   (21.02.2007 в 17:36)   письмо автору
 
   для: Trianon   (21.02.2007 в 17:33)
 

я, кажется, не сказал, что тут ошибка =))) а спросил, так ли это необходимо

   
 
 автор: Trianon   (21.02.2007 в 17:39)   письмо автору
 
   для: ZuArt   (21.02.2007 в 17:36)
 

Ок. я отвечу на вопрос. Да, необходимо.


Там парой строк ниже есть такая фраза замечательная.

MIME version: 1.0 

Это не просто бантик. Это указание стандарта.

   
 
 автор: ZuArt   (21.02.2007 в 17:42)   письмо автору
 
   для: Trianon   (21.02.2007 в 17:39)
 

*легкий поклон* - респ за торканье носом - не обратил внимание =)))

   
 
 автор: Trianon   (21.02.2007 в 17:37)   письмо автору
 
   для: dima2207   (21.02.2007 в 17:19)
 

Вы оборвали половину строки оператора, не разобравшись, как он устроен и что делает.
И удивляетесь, что ничего не работает.
Не портите чужой код.

Строки, о которых я говорю - те самые, в которых ZuArt пометил mime-конструкции управления кодированием.

   
 
 автор: ZuArt   (21.02.2007 в 17:40)   письмо автору
 
   для: Trianon   (21.02.2007 в 17:37)
 

скорее даже в первую очередь дело в разрыве первой строки из массива ["head"] =) - т.к. в ПЕРВУЮ очередь там строка не завершается символами "\r\n" + сам формат нарушен =)

   
 
 автор: ZuArt   (21.02.2007 в 17:42)   письмо автору
 
   для: dima2207   (21.02.2007 в 17:19)
 

ЗЫ. и так, просьба-напутствие, которое поможет и Вам и остальным - когда размещаете блок кода обрамляйте его соответствующими тегами форума - тут не просто так реализованы функции подсветки и форматирования... в Вашем посте разбираться, мягко говоря, непросто...

   
 
 автор: dima2207   (21.02.2007 в 17:51)   письмо автору
 
   для: ZuArt   (21.02.2007 в 17:42)
 

"а выделенные части текста обязательно так извращаться??? есть непримиримые основания писать именно ТАК?"
нет , мне просто отправить сообщение без всяких форм , запросов и т.д ! в переменной $per находится е-майл, а в пер. $per1 сообщение , как мне это сделать ???

   
 
 автор: dima2207   (21.02.2007 в 18:04)   письмо автору
 
   для: dima2207   (21.02.2007 в 17:51)
 

все . я нашол выход из положения :
<?
$message = "----------------------------";
// Send
mail('caffinated@example.com', 'My Subject', $message);
?>

   
 
 автор: dima2207   (21.02.2007 в 18:36)   письмо автору
 
   для: dima2207   (21.02.2007 в 18:04)
 

почему не работает ? а как отдельный блок - все нормально , работает , отсылает сообшение !!!
$new=$_POST['name12'];
$file = fopen("name.dat","r");
if(!file)
{
echo("ошибка открытия файла ");
}
$file = file ('name.dat');
$name = $new;
$flag = true;
for ($i=0; $i<count($file); $i++)
{
if (trim($file[$i]) == $name)
{
print "На ваш Е-Майл указаный при регистрации выслан пароль.";

$file_array = file("mail.dat");
if(!$file_array)
{
echo("Ошибка открытия файла");
}
else
{

$file_array1 = file("password.dat");
if(!$file_array1)
{
echo("Ошибка открытия файла");
}
else
{
// print $file_array[$i];
// print $file_array1[$i];

// The message
$message = "Система востановления пароля сайтa:\nваш пароль указанный при регистрации:$file_array1[$i]";

// Send
mail("$file_array[$i]", 'no subgect', $message);



}
}
Хотя массив file_array[$i] и file_array1[$i] не пустые , я проверял !!!! а сообщение не отправляется !!!
почему ? хотя когда я вывожу в отдельный блок :
/ Send
mail("my@mail.ru", 'no subgect', "-----------------");
то все нормально , работает !!!

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования