【发布时间】:2019-10-01 13:32:55
【问题描述】:
我有以下邮件脚本,其结构如下:
<?php
$to = 'example@testing';
$subject = 'Testing';
$from = 'test@email.com';
// To send HTML mail, the Content-type header must be set
$headers = 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
// Create email headers
$headers .= 'From: '.$from."\r\n".
'Reply-To: '.$from."\r\n" .
'X-Mailer: PHP/' . phpversion();
// Compose a simple HTML email message
$message = '<html><body>';
$message .= '<h1 style="color:#f40;">Hi!</h1>';
$message .= '<p style="color:#080;font-size:18px;">This is a test.</p>';
$message .= '</body></html>';
// Sending email
if(mail($to, $subject, $message, $headers)){
echo 'Your mail has been sent successfully.';
} else{
echo 'Unable to send email. Please try again.';
}
?>
然后我也想将下表放入正文中,但添加以下内容时,PHP 不起作用:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js" type="text/javascript"></script>
<style type="text/css">
tr.header
{
font-weight:bold;
}
tr.alt
{
background-color: #777777;
}
</style>
<script type="text/javascript">
$(document).ready(function(){
$('.striped tr:even').addClass('alt');
});
</script>
<title></title>
</head>
<body>
<?php
$server = mysql_connect("localhost","root", "");
$db = mysql_select_db("MyDatabase",$server);
$query = mysql_query("SELECT first_name, last_name, sign_date FROM Table1 WHERE sign_date = NOW()");
?>
<table class="striped">
<tr class="header">
<td>first_name</td>
<td>last_name</td>
<td>sign_date</td>
</tr>
<?php
while ($row = mysql_fetch_array($query)) {
echo "<tr>";
echo "<td>".$row[first_name]."</td>";
echo "<td>".$row[last_name]."</td>";
echo "<td>".$row[sign_date]."</td>";
echo "</tr>";
}
?>
</table>
<?php
$server = mysql_connect("localhost","root", "");
$db = mysql_select_db("MyDatabase",$server);
$query = mysql_query("SELECT employee_id, job_title, address FROM Table1 WHERE sign_date = NOW()");
?>
<table class="striped">
<tr class="header">
<td>employee_id</td>
<td>job_title</td>
<td>address</td>
</tr>
<?php
while ($row = mysql_fetch_array($query)) {
echo "<tr>";
echo "<td>".$row[employee_id]."</td>";
echo "<td>".$row[job_title]."</td>";
echo "<td>".$row[address]."</td>";
echo "</tr>";
}
?>
</table>
</body>
</html>
如何简单地将两者相加。将两者结合起来时似乎没有读取PHP并被忽略,让两个脚本一起工作的最有效方法是什么?
【问题讨论】:
-
向我们展示究竟是什么 “但是当添加以下内容时” 看起来是这样的。
-
是否可以将整个表格 HTML 脚本及其格式和 PHP 添加到 PHP 电子邮件函数中
-
旁注: 添加 javascript 以在电子邮件中发送将无济于事。无论如何,它们都会被剥离以避免 XSS 攻击。