【问题标题】:How to edit mail appearance in PHP?如何在 PHP 中编辑邮件外观?
【发布时间】:2017-04-02 07:55:05
【问题描述】:

我想知道这如何改变通过 PHP 发送给我的电子邮件的外观?

这是一个 PHP 代码:

<?php
$Ime = $_POST["Ime"];
$Prezime = $_POST["Prezime"];
$NaslovOglasa = $_POST["NaslovOglasa"];
$Email = $_POST["Email"];
$SadrzajOglasa = $_POST["SadrzajOglasa"];
$Kontakt = $_POST["Kontakt"];

if (isset($_POST['Istaknut_Oglas'])) {
$IstaknutOglas = "Da";
} else {
$IstaknutOglas = "Ne";
}

if (isset($_POST['Standardni_Paket'])) {
$StandardniPaket = "Da";
} else {
$StandardniPaket = "Ne";
}

$Za = "bratunac.info@gmail.com";
$Od  = "Od: " . $Email . "\r\n";
$Info .= "|NOVI OGLAS|" . "\r\n";
$Info .= "Ime: " . $Ime . "\r\n";
$Info .= "Prezime: " . $Prezime . "\r\n";
$Info .= "Naslov oglasa: " . $NaslovOglasa . "\r\n";
$Info .= "Sadrzaj oglasa: " . $SadrzajOglasa . "\r\n";
$Info .= "Kontakt informacije: " . $Kontakt . "\r\n";
$Info .= "Istaknut oglas: " . $IstaknutOglas . "\r\n";
$Info .= "Standardni paket: " . $StandardniPaket . "\r\n";
$Info .= "" . "\r\n";

if(isset($_FILES['file_array'])){
$name_array = $_FILES['file_array']['name'];
$tmp_name_array = $_FILES['file_array']['tmp_name'];
$type_array = $_FILES['file_array']['type'];
$size_array = $_FILES['file_array']['size'];
$error_array = $_FILES['file_array']['error'];  
for($i = 1; $i < count($tmp_name_array); $i++){
    if(move_uploaded_file($tmp_name_array[$i], "adsuploads/".$name_array[$i])){
        $Info .= "Fotografija ".$i.": ".$name_array[$i]. "\r\n"; 
    }
}
mail($Za, $Od, $Info);
header("Location: http://bratunacinfo.000webhostapp.com/pages/postavi_oglas-3");
}
?> 

我想知道这是否可以通过 php me 来完成,或者我需要一些框架

【问题讨论】:

  • 使用 html(设置电子邮件的内容类型为text/html)
  • 我建议为此使用久经考验的邮件库,如 SwitfMail、PHPMailer 或类似的。这将节省您重新发明轮子的时间。发送 html 电子邮件时,您还应该为无法阅读 HTML 电子邮件或将其关闭的电子邮件客户端添加纯文本部分,这很容易使用常用库之一。

标签: php email appearance


【解决方案1】:

您可以将电子邮件作为 HTML 电子邮件发送。例如:

<?php
    $to = "someone@somedoamin.com";
    $subject = "Some email title";
    $content = "
    <html>
        <head>
            <title>HTML email</title>
        </head>
        <body>
            <p>This email contains HTML Tags!</p>
            <table>
                <tr>
                    <th>Firstname</th>
                    <th>Lastname</th>
                </tr>
                <tr>
                    <td>John</td>
                    <td>Doe</td>
                </tr>
            </table>
        </body>
    </html>
    ";

    $headers = "MIME-Version: 1.0\r\nContent-type:text/html;charset=UTF-8\r\n";
    mail($to, $subject, $content, $headers);
?>

欲了解更多信息,您可以访问this。

【讨论】:

    【解决方案2】:

    您需要执行以下操作:

    1. 以 html 格式准备您的邮件内容。

      <html> <body> //write your stuff </body> </html>

    2. 提供图像的绝对路径而不是相对路径。因此,仅提供图像名称是不够的。您需要提供该图像在服务器中的确切路径。这样,它就会从那里加载它。

    【讨论】:

    • 我已经这样做了,一切正常,最近来了 但是如何改变电子邮件的外观
    • 我只想在我们到达时邮件看起来不一样,而不仅仅是文本
    • 外观是什么意思??你需要设置Content-type:text/html
    • 我用 HTML 制作了一个表单,一切正常,或者我想发送电子邮件时看起来不同,例如在发送邮件 youtube 时
    • @MProduction - 如果您希望它看起来不同,只需更改 HTML 标记?你的问题非常非常不清楚!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多