-1

I am trying to send an email with my server. I am using php's mail function. The function is returning true. But I am not receiving any email. I have checked the logs. And even the logs are not showing any error. My domain is "islamerkotha.com". My code is given below -

<?php

    $msg = "First line of text\nSecond line of text";
    $msg = wordwrap($msg,70);
    $headers = "From: test1@islamerkotha.com";
    mail("erfan.bashar.13@gmail.com", "My subject", $msg, $headers);

Thank you.

odbhut.shei.chhele
  • 5,834
  • 16
  • 69
  • 109

2 Answers2

1

There are many points along the path an email message takes where yours could be failing, but take a look at the PHP mail() function page; it specifically says that the function returns true if the message was accepted for delivery and "it is important to note that just because the mail was accepted for delivery, it does NOT mean the mail will actually reach the intended destination."

EDIT: Look here for more information on PHP error reporting. If you don't see any errors then, look at phpinfo() to see if the mail() function is even enabled. If it is, then it's time to start looking further downstream...

John
  • 916
  • 7
  • 14
0

Try PHP Mailer, with this, you doesn't need to have local SMTP server and also you can also use your validations

    <?php
    require 'PHPMailerAutoload.php';

    $mail = new PHPMailer;

    //$mail->SMTPDebug = 3;                               // Enable verbose debug output

    $mail->isSMTP();                                      // Set mailer to use SMTP
    $mail->Host = 'smtp1.example.com;smtp2.example.com';  // Specify main and backup SMTP servers
    $mail->SMTPAuth = true;                               // Enable SMTP authentication
    $mail->Username = 'user@example.com';                 // SMTP username
    $mail->Password = 'secret';                           // SMTP password
    $mail->SMTPSecure = 'tls';                            // Enable TLS encryption, `ssl` also accepted
    $mail->Port = 587;                                    // TCP port to connect to

    $mail->From = 'from@example.com';
    $mail->FromName = 'Mailer';
    $mail->addAddress('joe@example.net', 'Joe User');     // Add a recipient
    $mail->addAddress('ellen@example.com');               // Name is optional
    $mail->addReplyTo('info@example.com', 'Information');
    $mail->addCC('cc@example.com');
    $mail->addBCC('bcc@example.com');

    $mail->WordWrap = 50;                                 // Set word wrap to 50 characters
    $mail->addAttachment('/var/tmp/file.tar.gz');         // Add attachments
    $mail->addAttachment('/tmp/image.jpg', 'new.jpg');    // Optional name
    $mail->isHTML(true);                                  // Set email format to HTML

    $mail->Subject = 'Here is the subject';
    $mail->Body    = 'This is the HTML message body <b>in bold!</b>';
    $mail->AltBody = 'This is the body in plain text for non-HTML mail clients';

    if(!$mail->send()) {
        echo 'Message could not be sent.';
        echo 'Mailer Error: ' . $mail->ErrorInfo;
    } else {
        echo 'Message has been sent';
    }
Pankaj
  • 571
  • 5
  • 20