有问题,我发现了这个:
http://www.phpdevtips.com/2013/06/email-open-tracking-with-php-and-mysql/
所以能够让它工作,甚至想出如何在页面中显示数据,这一个:
<html>
<head>
<meta http-equiv="refresh" content="900">
<title>Who read his e-Mail, and when?</title>
<link href="https://fonts.googleapis.com/css?family=Open+Sans" rel="stylesheet">
<style>
* {
box-sizing: border-box;
}
.txt {
font-family: 'Open Sans', sans-serif;
font-size: 11px;
text-align: left;
}
h2 {
padding: 5px;
font-family: 'Open Sans', sans-serif;
font-size: 24px;
text-align: left;
font-weight: bold;
}
#myTable {
border-collapse: collapse;
width: 100%;
border: 1px solid #ddd;
font-size: 18px;
}
#myTable th, #myTable td {
text-align: left;
padding: 12px;
}
#myTable tr {
border-bottom: 1px solid #ddd;
}
#myTable tr.header, #myTable tr:hover {
background-color: #f1f1f1;
}
</style>
</head>
<body>
<h2>Who read his e-Mail, and when?</h2>
<?php
mysql_connect("localhost", "***", "***") or die (mysql_error ());
mysql_select_db("***") or die(mysql_error());
$strSQL = "SELECT * FROM email_log";
$rs = mysql_query($strSQL);
while($row = mysql_fetch_array($rs)) {
echo "<table border='1' width='100%' style='border-collapse: collapse' cellpadding='5' class='txt' id='myTable'>";
echo "<tr class='header'>";
echo "<td width='5%' class='txt'>";
echo $row['id'] . "</td><td width='30%' class='txt'>";
echo $row['user'] . "</td><td width='40%' class='txt'>";
echo $row['subject'] . "</td><td width='25%' class='txt'>";
echo $row['opened'] . "</td>";
echo "</tr>";
echo "</table>";
}
mysql_close();
?>
</body>
</html>
到目前为止,非常好,现在我的问题是,在打开行中退出数据库的日期和时间在结果页面上显示如下:{{1 }}
我希望它显示为2017-03-09 07:53:58
它应该是6个小时之后,因为在我看来它现在显示的是服务器时间,而不是我们的时区。
为了得到你的帮助,任何人都可以向我推进正确的方向?任何帮助表示感谢。
里斯
答案 0 :(得分:0)
要更改日期格式,您可以使用
日期(&#39; h:我:s d-m-Y&#39;,strtotime($ row [&#39;已打开&#39;]));
管理时区的最佳方法是,您可以在将日期时间插入数据库的位置设置时区。在映射到数据库之前初始化您想要的时区。
<强> date_default_timezone_set(&#34;亚/曼谷&#34); 强>
而非亚洲/曼谷&#34;你可以给你的时区
答案 1 :(得分:0)
谢谢大家,很棒的解决方案,这个做得最好:
回音日期('H:i:s d-m-Y',strtotime($ row ['open'])+ 21600);
来自西班牙的Tnx,Greetz:)
答案 2 :(得分:-1)
SELECT DATE_FORMAT(opened,'%H:%i:%s %d-%m-%Y')opened,id,user,subject FROM email_log
您可以尝试DATE_FORMAT()
MySQL
。
尝试上面的代码希望这会有所帮助。