无法查看已发送电子邮件中的图像 PHP、JQuery

Can't view image in Email sent PHP, JQuery

我有一个 child window 和 table。当我单击一行(带有按钮 select)时,文本已成功传输到打开器或 parent window。我想使用 php's/sendmail 的 函数:mail() 发送与我的文本内联的图像。仅发送带有文本的电子邮件是成功的。 发送的电子邮件采用 html 格式,因此我可以更改内容的外观(粗体字母、斜体等) 但是当我发送带有图像的电子邮件时,我无法在我的电子邮件中看到它。如何解决?或者如何发送带有内联图像的电子邮件?我的代码在这里:

JQUERY:

$(document).ready(function(){
 $('#products-table .selectbtn').click(function() {

    var td = $(this).closest('tr');

    var f;
    var s;
    var t;
    var q;
    var w;

    $(td).each(function(){
        f = $(this).find(".class").html(); 
        s = $(this).find(".brand").html(); 
        t = $(this).find(".model").html(); 
        q = $(this).find(".price").html(); 
        w = $(this).find(".terms").html(); 
        g = $(this).find(".img").html(); 
    });

    var x = 'Class: ' + f + '\n' + 'Brand: ' + s + '\n' + 'Model: ' + t + '\n' + 'Price: ' + q + '\n' + 'Terms: ' + w;
    var z = g + '<br/>' + '<b>Class:</b> ' + f + '<br/>\n' + '<b>Brand: </b>' + s + '<br/>\n' + '<b>Model: </b>' + t + '<br/>\n' + '<b>Price: </b>' + q + '<br/>\n' + '<b>Terms: </b>' + w;
    opener.document.motorappform.productdesc.value = x;
    opener.document.motorappform.productdeschidden.value = z;
    self.close();
});
});

z 变量将作为 mail() 参数的消息发送到我的电子邮件中(即已经是 html 格式,所以我对此没有问题)。 g 的值类似于:

<img src = "folder/image.png"></img>

这些是我的 php 代码:

<?php

$fullname = $_POST["fname"].' '.$_POST["mname"].' '.$_POST["lname"];
$contact = $_POST["contact"];
$category = $_POST["finance-type"];
$location = $_POST["city"].', '.$_POST["province"];
$senderemail = $_POST["email"];
$birthday = $_POST["month"].' '.$_POST["dd"].', '.$_POST["yyyy"];
$productdesc =$_POST["productdeschidden"];
$subject = "Loan Application";
$email;
$message;

if($category == "Motorcycle Financing")
{
$email = "email@email.com";
$message = "<html><head></head><body><b>Service Type:</b> ".$category."<br/> <br/>"."<b>Name:</b>         ".$fullname."<br/>"."<b>Birthdate:</b> ".$birthday."<br/>"."<b>Location: </b>".$location."<br/>"."    <b>Contact No: </b>".$contact."<br/>"."<b>Email:</b> ".$senderemail."<br/> <br/>"."<b>Requested        motorcycle to loan</b><br/>".$productdesc."<br/> <br/>"."<b>Message:</b> <br/>".$_POST["message"]."    </body></html>";

}

else if ($category == "RX Cash Line")
{
$email = "email@email.com";
$message = "<html><head></head><body><b>Service Type:</b> ".$category."<br/> <br/>"."<b>Name:</b>     ".$fullname."<br/>"."<b>Birthdate:</b> ".$birthday."<br/>"."<b>Location: </b>".$location."<br/>"."    <b>Contact No: </b>".$contact."<br/>"."<b>Email:</b> ".$senderemail."<br/> <br/>"."<b>Message:</b>     <br/>".$_POST["message"]."</body></html>";

}

else if ($category == "MFC Factors")
{
$email = "email@email.com";
$message = "<html><head></head><body><b>Service Type:</b> ".$category."<br/> <br/>"."<b>Name:</b> ".$fullname."<br/>"."<b>Birthdate:</b> ".$birthday."<br/>"."<b>Location: </b>".$location."<br/>"."<b>Contact No: </b>".$contact."<br/>"."<b>Email:</b> ".$senderemail."<br/> <br/>"."<b>Message:</b> <br/>".$_POST["message"]."</body></html>";

}


$headers  = 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
$headers .= "From: MFC Website". "\r\n";
$headers .= 'Cc: email@email.com' . "\r\n";


if (mail($email, $subject, $message, $headers))
{
    echo '
            <script>
                alert ("Message Sent!");
                window.location.href = "index.html";
            </script>
        ';
}
else
{
    echo '
            <script>
                alert ("Failed to send message");
                window.location.href = "index.html";
            </script>
        ';
}
?>

除了发送的图像,一切正常。我没有看到确切的图像,我只在我的电子邮件中看到一个带有裂纹的图标。我怎样才能解决这个问题?谢谢!

您必须使用网站的完整路径,包括 http://mydomain[dot]com/folder/image.png

当想要在电子邮件中显示图像时,需要完整的网址 http://

这是我从您的代码中提取的一行中的一个示例:

$message = "<html><head></head><body><b>Service Type:</b> ".$category."<br/> <br/>"."<b>Name:</b> ".$fullname."<br/>"."<b>Birthdate:</b> ".$birthday."<br/>"."<b>Location: </b>".$location."<br/>"."    <b>Contact No: </b>".$contact."<br/>"."<b>Email:</b> ".$senderemail."<br/> <br/>"."<b>Requested        motorcycle to loan</b><br/>" . "<img src=\"http://www.yourSite.com/folder/$productdesc\">" . "<br/> <br/>"."<b>Message:</b> <br/>".$_POST["message"]."    </body></html>";

注意:

. "<img src=\"http://www.yourSite.com/folder/$productdesc\">" .

这假设您的 POST 将呈现如下内容:

$productdesc = "image.png";