2015-01-19 14 views
10

Test postası göndermek için PHP'nin mail() işlevini kullanmaya çalışıyorum.[PHP Uyarı: mail(): "sendmail_from" php.ini içinde ayarlanmamış veya özel "Kimden:" başlık eksik

[PHP Warning: mail(): " sendmail_from" not set in php.ini or custom "From:" header 
missing in C:/xampp/htdocs/tinyProj/mail.php on line 4] 

Nedenini anlayamıyorum:

$to = "****@gourab.me"; 
$sub = "Php Mail"; 
$msg = "Test Message From PHP"; 

mail($to, $sub, $msg, "From: **********@gmail.com"); 

ben phpdbg içinde step aracılığıyla hata ayıklamaya çalıştığınızda, bu mesajı gösterir?

+0

nedir soru? –

+2

Toplu, soru oldukça açık bir şekilde okur, "Nedenini anlayamıyorum? Başka kimse var mı?" – Epirocks

cevap

21

From başlığınız düzgün biçimlendirilmemiş gibi görünüyor. Bunun yerine bu deneyin:

$headers = 'MIME-Version: 1.0' . "\r\n"; 
$headers .= 'From: Your name <[email protected]>' . "\r\n"; 
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n"; 

mail($to, $subject, $body, $headers); 
+1

Bunu denedim ama şimdi phpdbg gösteriliyor '[PHP Uyarı: mail(): localhost port 25'te mailserver'a bağlanamadı, php.ini içinde" SMTP "ve" smtp_port "ayarlarınızı doğrulayın veya ini_set() kullanın – Ikari

+0

Canlı bir sunucuda mı yoksa sadece PC'nizde mi? – fillobotto

+0

XAMPP – Ikari

2

Bro o size SMTP sunucusuna bağlanamıyor yüzden PC/localhost/127.0.0.1 sunucu kendi kullandığınız anlaşılıyor. Sadece bazı değişiklikler ile benzer kodlama kullanarak canlı sunucudan posta gönderebilirsiniz :), yani "Üstbilgi/Gönderen" bir parametre ekleyin.

mail("[email protected]","Answer","Hope You Vote My Answer Up","From: [email protected]"); 
0
<?php 
if(isset($_POST['send'])){ 
    $from = $_POST['femail']; 
    $phoneno = $_POST['phoneno']; 
    $message = $_POST['message']; 
    $carrier = $_POST['carrier']; 
    if(empty($from)){ 
     echo("enter the email"); 
     exit(); 

    } 
else if(empty($phoneno)){ 
    echo("enter the phone no"); 
    exit(); 
    } 
elseif(empty($carrier)){ 
    echo("enter the specific carrier"); 
    exit(); 
    } 
else if(empty($message)){ 
    echo("enter the message"); 
    exit(); 
    } 
    else{ 
    $message = wordwrap($message, 70); 
    $header = $from; 
    $subject = 'from submission'; 
    $to = $phoneno.'@'.$carrier; 
    $result = mail($to, $subject, $message, $header); 
    echo("message sent to".$to); 

    } 

    } 
?> 
+0

Sevgili Yusuph, bu tür bir soruya cevap verirken daha doğrudan olmaya çalışmalısın, soru bir hata mesajı aldığını söylüyor ama kodla iyi görünüyor. –