使用PHP,html格式的电子邮件确认电子邮件

1 html php

我不熟悉PHP,无法找到解决问题的具体方法.我们在印度外包了一个项目用于后端,他们的部分任务是通过电子邮件确认创建登录.

以下是代码的一部分:

$sql     = "SELECT * FROM `users` WHERE `email`='$name' AND `status`= 1";
$result  = $db->select($sql);
$num_row = $db->numrows($sql);
if($num_row > 0) {
    $row= $db->fetcharray($sql);

    $Password   =   $row['password'];
    $body       = "Dear ".$row['fname']." <br> <br>";
    $body       .= "Your password is : ".$Password." <br> <br>";
    $body       .= "Please login with below link : <br/>";
    $body       .= SITE_URL;

    $email           = $row['email'];
    $messageSubject  = "Forgot Password : Quicksl";
    $messageBody     = $body;   

    sendContactMail(SENDER_NAME,SENDER_EMAIL,$messageBody,$email,$messageSubject);
    echo "matched";
Run Code Online (Sandbox Code Playgroud)

但是,当我们收到电子邮件时,它仍然包含<br>HTML 中的标记,而不是将其呈现为HTML.

是否必须对语法做任何事情?如何通过上面的代码在PHP中格式化电子邮件,以便<br>电子邮件中没有标签,但它是从新行开始的?

如果我没有明白我的问题,请告诉我.

Osi*_*ris 8

你需要添加

$headers .= "MIME-Version: 1.0\r\n";
$headers .= "Content-Type: text/html; charset=ISO-8859-1\r\n";
Run Code Online (Sandbox Code Playgroud)

并传递$headers给PHP mail函数的最后一个参数,无论它在哪里.