您好.... oh的公民,跳过所有这些...我在尝试通过cron输出html时遇到了一些困难,并且我检查了对此问题的其他答复。但是,我似乎做得不好,所以我希望外面有人可以帮助我。数据正确提取,并且cron电子邮件发送,但最终我得到的是附加了所有html标记的数据。我试过将$ to和$ header移出while循环,在while循环之上,在while循环之下,并且还尝试了while循环中的所有内容,只有$ message是对dtat $ row等的一次调用。然后在循环中回显。 我试过两个版本的---
( $headers .= 'Content-type:text/html;charset=iso-8859-1'
. "\r\n";)
和
( $headers .= 'Content-type:text/html;charset=utf-8-1' .
"\r\n";)
因此,任何帮助都会很棒! 干杯!
$db = new MySQLi('------', '------', '------', '------');
if ($db->connect_error) {
$mese = $db->connect_error; } else {
$sql = "SELECT * FROM table";
$result = $db->query($sql);
while ($row = mysqli_fetch_assoc($result)) {
$to = "some@gmail.com";
$headers = 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type:text/html;charset=iso-8859-
1'
. "\r\n";
$message = "<html>";
$message .= "<head></head>";
$message .= "<body>";
$message .= '<ul><li>' . $row['item'] .'</li></ul>';
echo $message;
$message .= "</body>";
$message = "</html>";
$from = "somewhere@.someplace.net"; $subject = "checking php
mail";
mail($headers, $to,$subject,$message, $from);
}
}
?>
答案 0 :(得分:0)
代码中的所有引号都弄乱了。这可能是原因。
尝试一下:
$headers = "MIME-Version: 1.0\r\n";
$headers .= "Content-Type: text/html; charset=ISO-8859-1\r\n";
$message = '<html>';
$message .= '<head></head>';
$message .= '<body>';
$message .= '<ul><li>' . $row['item'] .'</li></ul>';
$message .= '</body>';
$message .= '</html>';