发送电子邮件问题

时间:2012-06-15 16:08:21

标签: php

我是php的牧师,所以请原谅我的无知。我已经创建了php表单,除了一件事情它工作正常。当我收到我的邮件时说它是从 nobody 发送的,我不知道我怎么能解决这个问题所以我要求的帮助不大!谢谢!!!
这是我的代码:

     <?php  

    if (isset($_POST['Submit'])) {  

        if (!empty($_POST['name'])) {  
            $_POST['name'] = filter_var($_POST['name'], FILTER_SANITIZE_STRING);  
            if ($_POST['name'] == "") {  
                $errors .= 'Molimo unesite Vaše ispravno ime.';  
            }  
        } else {  
            $errors .= '<p>Molimo unesite Vaše ime.</p>';  
        }  

        if (!empty($_POST['email'])) {  
            $email = filter_var($_POST['email'], FILTER_SANITIZE_EMAIL);  
            if (!filter_var($email, FILTER_VALIDATE_EMAIL)) {  
                $errors .= "$email is <strong>NIJE</strong>  valjana email adresa.<br/><br/>";  
            }  
        } else {  
            $errors .= '<p>Molimo unesite  email adresu.</p>';  
        }  




        if ($_POST['message'] != "") {  
            $_POST['message'] = filter_var($_POST['message'], FILTER_SANITIZE_STRING);  


        }  

        if (!$errors) { 

            $mail_to = 'dejo.dekic@yahoo.com';  
            $subject = 'Kontakt';  
            $tema = 'Info';
            $headers  = 'MIME-Version: 1.0' . "\r\n";
            $headers  = 'Od: ' . $_POST['name'] . "\n"; 
            $headers .= 'Email: ' . $_POST['email'] . "\n";  
            $headers .= "Poruka:\n" . $_POST['message'] . "\n\n";  

            $user = $_POST['email'];
            $poruka ='Vaš kontakt je uspjesno zaprimljen! Odgovorit ću vam u najkraćem mogućem roku. Hvala! Molimo ne odgovarajte na ovu poruku. Ova poruka je automatska.';
            mail($mail_to, $subject, $headers, "Content-Type: text/plain; charset=UTF-8;");  
            mail($user, $tema, $poruka, "Content-Type: text/plain; charset=UTF-8;"); 

            echo "<div style='color:white;margin:0px auto;padding-top:20px;width:290px;background-color:white;font-weight:bold;text-align:center;'><p>Hvala Vam na kontaktu!</p></div>";

        } else {  
            echo '<div class="errors">' . $errors . '<br/></div>';  

        }  
    }  

?>  

这就是我在雅虎邮箱中的样子:http://www.homepagepays.robertpeic.com/yahoo.png

2 个答案:

答案 0 :(得分:2)

$from = 'yourdesiredemail@here.com';
$headers .= "From: " . $from . "\r\n";

只需要添加标题。

答案 1 :(得分:0)

经过一番努力,我已经设法在你的帮助下解决了这个问题:)所以如果有人遇到同样的问题,我会发布解决方案。谢谢!注意: $ add_headers和内部邮件功能:-fmail@robertpeic.com 这里是我的完整代码:           

    if (isset($_POST['Submit'])) {  

        if (!empty($_POST['name'])) {  
            $_POST['name'] = filter_var($_POST['name'], FILTER_SANITIZE_STRING);  
            if ($_POST['name'] == "") {  
                $errors .= 'Molimo unesite Vaše ispravno ime.';  
            }  
        } else {  
            $errors .= '<p>Molimo unesite Vaše ime.</p>';  
        }  

        if (!empty($_POST['email'])) {  
            $email = filter_var($_POST['email'], FILTER_SANITIZE_EMAIL);  
            if (!filter_var($email, FILTER_VALIDATE_EMAIL)) {  
                $errors .= "$email is <strong>NIJE</strong>  valjana email adresa.<br/><br/>";  
            }  
        } else {  
            $errors .= '<p>Molimo unesite  email adresu.</p>';  
        }  




        if ($_POST['message'] != "") {  
            $_POST['message'] = filter_var($_POST['message'], FILTER_SANITIZE_STRING);  


        }  

        if (!$errors) { 

            $mail_to = 'dejo.dekic@yahoo.com';  
            $subject = 'Kontakt';  
            $tema = 'Info';
            $headers  = 'MIME-Version: 1.0' . "\r\n";
            $headers .=  "Content-Type: text/plain; charset=UTF-8" . "\r\n";
            $headers .= 'Od: ' . $_POST['name'] . "\n"; 
            $headers .= 'Email: ' . $_POST['email'] . "\n";  
            $headers .= "Poruka:\n" . $_POST['message'] . "\n\n"; 
            $add_headers = 'From: mail@robertpeic.com' . "\r\n". "Return-path: mail@robertpeic.com" . "\r\n";

            $user = $_POST['email'];
            $poruka ='Vaš kontakt je uspjesno zaprimljen! Odgovorit ću vam u najkraćem mogućem roku. Hvala! Molimo ne odgovarajte na ovu poruku. Ova poruka je automatska.';
            mail($mail_to, $subject, $headers, $add_headers, "-fmail@robertpeic.com");  
            mail($user, $tema, $poruka, $add_headers, "-fmail@robertpeic.com"); 

            echo "<div style='color:white;margin:0px auto;padding-top:20px;width:290px;background-color:white;font-weight:bold;text-align:center;'><p>Hvala Vam na kontaktu!</p></div>";

        } else {  
            echo '<div class="errors">' . $errors . '<br/></div>';  

        }  
    }  

?>  

这就是我在雅虎邮箱中的样子:http://www.homepagepays.robertpeic.com/yahoo2.png