php
  • php-ini
  • 2013-08-22 4 views 0 likes 
    0

    Я пытаюсь отправить простой html-адрес электронной почты с помощью PHP mail().Проблема PHP mail(), если она содержит URL

    Следующий код работы штраф

    $headers = 'MIME-Version: 1.0' . "\r\n"; 
    $headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n"; 
    If(mail('[email protected]', 'test mail', 'test<hr>this is a test mail', $headers)){ 
        Echo 'OK'; 
    } else{ 
        Echo 'Not ok'; 
    } 
    

    Проблема: как только я поставил некоторые конкретный URL в теле код все еще говорят, что его хорошо, но адрес электронной почты никогда не получил

    If(mail('[email protected]', 'test mail', 'test<hr>this is a test mail from www.xyz.com', $headers)){ 
        Echo 'OK'; 
    } else{ 
        Echo 'Not ok'; 
    } 
    

    Может ли кто-нибудь помочь мне решить проблему и как ее исправить?

    +2

    отправьте свое сообщение на этот сайт, чтобы узнать, работает ли сервер с ним как спам http://www.mail-tester.com – MaveRick

    +1

    Сначала измените все свои '' '' на нормальные '' 'Это само по себе произведет нежелательные результаты, являющиеся 'Parse error: ...' и 'Parse error: синтаксическая ошибка, неожиданная '@'' –

    +0

    Правильно ли вы настроили конфигурацию почты? –

    ответ

    1

    mail() имеет 4-й и 5-й параметры (необязательно). 5-й аргумент - это то, что должно быть передано как параметры непосредственно sendmail. используйте следующее:

    $body = 'test<hr>this is a test mail from'.htmlentities('www.xyz.com'); 
    
    if(mail('[email protected]','test mail', $body,$headers,'-f [email protected]')) 
    { 
    .... 
    } 
    

    надеюсь, что он работает сейчас :)

    и при поиске почты сделать, проверьте папку со спамом.

    +0

    Спасибо за его работу, но я думаю, проблема в том, что это блокирующий адрес электронной почты, который содержит определенные домены. какие идеи могут быть причиной и как это исправить? – Shah

    Смежные вопросы