Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > PHP: Общие вопросы > Отправка писем на mail.ru с ссылкой в тексте глюк


Автор: php5 14.9.2007, 10:23
Имеется скрипт который отправляет письмо с ссылкой для продолжения активации

Код

function sendmaile($to,$text) 
{ 
$header="From:My Compani  <mymail.com.ua>\n"; 
$header.="Content-Type: text/html; charset=windows-1251\n"; 
$filemessage="Активация учетной записи на ".HOSTNAME; 
$subject="Активация учетной записи на ".HOSTNAME; 
if(mail($to,$subject,$text,$header)) 
return true; 
else 
return false; 

} 

      $idkey=base64_encode("timeactiv=".time()."maile=".$_POST['email']); 
       $mailetext="Ваша учетная запись помещена в очередь обновления. 
       <a href='http://" 
       .HOSTNAME."/".WWW.$idkey."'>Для подтверждения обновления щелкните   здесь!</a> Спасибо!"; 
  
       sendmaile($_POST['email'],$mailetext)

так вот при отпраки такого письма на ящик mail.ru клиент получает только текст «Ваша учетная запись помещена в очередь обновления» и все что за прикол ?
Я  для проверки создал ящик на  mail.ru  ни каких фильтров и не каких черных списков не создавал но письма приходят все равно без ссылки  

Автор: MoLeX 14.9.2007, 11:06
Цитата(php5 @  14.9.2007,  10:23 Найти цитируемый пост)
$idkey=base64_encode("timeactiv=".time()."maile=".$_POST['email']);


во первых - кажеться шо пропущен знак - &
во вторых -
Код

 echo "<a href=\"http://www.site.com/index.php?".$idkey."\">Для подтверждения обновления щелкните здесь!</a>";

Автор: sTa1kEr 14.9.2007, 11:22
Цитата(php5 @  14.9.2007,  10:23 Найти цитируемый пост)
$header="From:My Compani  <mymail.com.ua>\n"; 
$header.="Content-Type: text/html; charset=windows-1251\n"; 

В конце каждой строки заголовков нужно ставить \r\n
Код

$header  = "From: My Compani  <mymail.com.ua>\r\n"; 
$header .= "Content-Type: text/html; charset=windows-1251\r\n"; 

Цитата(php5 @  14.9.2007,  10:23 Найти цитируемый пост)
if(mail($to,$subject,$text,$header)) 
return true; 
else 
return false; 

Зачем такой изврат? не проще ли сразу возращать значение mail()?
Код

return mail($to, $subject, $text, $header);

Автор: php5 14.9.2007, 15:52
бок был из-зи того, что  нужно было  '  заменить   на \"
СПАСИБО MoLeX !

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)