Using PHP mail( )

末鹿安然 提交于 2019-12-13 03:39:14

问题


I have a php mail script which works perfectly on a one host. However, when I attempt to use the same script on a network solutions host, the function returns true but no email ever sends.

//get mail function data
$case = $_POST['case'];
$to = addslashes(strip_tags($_POST['to']));
$message = addslashes(strip_tags($_POST['message']));
$subject = addslashes(strip_tags($_POST['subject']));
$message = addslashes(strip_tags($_POST['message']));
$from = "confirmation@website.co";
$headers = "From: $from\r\n";

//send email
        if (mail($to,$subject,$message,$headers)){
            //formatting for error message
            $emailSent = "block";
            $emailFailed = "none";
        }
        else //if the email fails to send
        {

            $emailSent = "none";
            $emailFailed = "block";
        }
?>

Does anyone know if different hosts require specific info in mail script?


回答1:


This is a question for Network Solutions customer support. Sending mail from shared hosting servers is usually well locked down -- if they allow it at all, it's throttled. Also, calling mail just means the message was successfully passed to sendmail, not that the mail ever left the server. It could be sitting in a queue to be sent, it could have bounced for a million reasons beyond your control, etc.




回答2:


Some hosts have this issue. On mine (Mosso), I had to adjust the last parameter (from) like so:

mail($to, $subject, $message, $headers, "-f".$from)

May not be the solution for NetSol but worth a try. I know some hosts disable the script and require using the smtp class to send mail.

This is assuming, of course, everything is correct with your DNS and MX records. If you're trying to send from an account that is different than the domain being sent from, some providers will automatically block that.




回答3:


It maybe that they have not enabled php mail, but ask the host for specifics.

Looking at your code it is not cleaning the input sufficiently. take a look at the is_forbidden function here: http://thedemosite.co.uk/phpformmailer/source_code_php_form_mailer_more_secure_than_cgi_form_mailers.php



来源:https://stackoverflow.com/questions/4954853/using-php-mail

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!