警告:date():并且无法修改联系表单上的标题信息

时间:2017-06-08 03:45:15

标签: php scripting server

我有一个网络上的一个小联系表格,并尝试insdtall它但我得到这2个错误,我必须承认,我不是很好的PHP esp服务器端。 错误是:

错误1 *警告:date():依赖系统的时区设置是不安全的。您必需使用date.timezone设置或date_default_timezone_set()函数。* contactform / include / class.phpmailer.php第1612行以及相同的行警告1616同一文件class.phpmailer.php

第1612行到class.phpmailer.php第1616行是

1612- $tz = date('Z');
1613- $tzs = ($tz < 0) ? '-' : '+';
1614- $tz = abs($tz);
1315- $tz = (int)($tz/3600)*100 + ($tz%3600)/60;
1316- $result = sprintf("%s %s%04d", date('D, j M Y H:i:s'), $tzs, $tz);

错误2 警告 :无法修改标头信息 - 已经发送的标头(输出从/ home / massa /开始)第143行/home/massa/public_html/mydomain.com/folder/contactform/include/fgcontactform.php中的public_html / mydomain.com / folder / contactform / include / class.phpmailer.php:1612)

fgcontactform.php的第143行是。

143-  header("Location: $url");
144-  exit;

我必须说明这不是我的代码,它只是我在互联网上的免费基本联系表格,并试图在我的网站上实现它。 任何帮助将不胜感激。 如何在第1612行插入正确的时区以及在另一个文件的第143行插入什么内容。 提前致谢。 的米歇尔

1 个答案:

答案 0 :(得分:1)

问题出在您的php.ini设置中。按照警告的建议,编辑文件并添加:

date.timezone="Australia/Sydney"

或者,也可以在代码开头的某处添加对date_default_timezone_set("Australia/Sydney")的调用。

一旦错误得到解决,您的其他问题也将消失。 PHP回应它遇到的所有错误,除非您的输出被缓冲,否则它将发送HTTP响应头以及它输出的第一个内容。之后使用header('Location: ...')为时已晚,因为标题已经发送到客户端。