Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/grails/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 警告:日期():并且无法修改联系人表单上的标题信息_Php_Scripting_Server - Fatal编程技术网

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

Php 警告:日期():并且无法修改联系人表单上的标题信息,php,scripting,server,Php,Scripting,Server,我从网上得到了一个小小的联系表单,并试图检查它,但我得到了这两个错误,我必须承认,我不太擅长php esp服务器端。 错误是: 错误1:*警告:日期():依赖系统的时区设置是不安全的。您需要使用date.timezone设置或date\u default\u timezone\u set()函数。*第1612行的contactform/include/class.phpmailer.php以及同一文件class.phpmailer.php的第1616行的相同警告 class.phpmailer.

我从网上得到了一个小小的联系表单,并试图检查它,但我得到了这两个错误,我必须承认,我不太擅长php esp服务器端。 错误是:

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

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

我必须说明这不是我的代码,它只是一个免费的基本联系方式,我在互联网上,并试图实现它在我的网站上。。 任何帮助都将不胜感激。 如何在第1612行插入正确的时区,以及在另一个文件的第143行插入什么。。 提前谢谢。
问题出在你的
php.ini
设置中。按照警告的建议,编辑文件并添加以下内容:

date.timezone="Australia/Sydney"
或者,将调用添加到代码开头的某个地方的
date\u default\u timezone\u set(“澳大利亚/悉尼”)


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

您可以添加ob_start();作为一个快速而肮脏的黑客。原因是在头重定向之前不允许发送任何输出。ob_start将吃掉该输出。至于时区。抱歉@mkaatman:我已经利用了你说的链接上的那篇文章,似乎无法理解。在哪个文件的顶部添加ob start。?请我的文件的顶部是类PHPMailer{var$Priority=3;以及下面列出的其他类。抱歉,我不是真的想知道它是如何工作的,只是想知道确切的放置内容和位置,这样我就可以访问我的网站了。谢谢,抱歉@mkaatman:我已经利用了你说的链接上的那篇文章,似乎无法理解。请在哪个文件的顶部添加ob start。?请?顶部我的文件是PHPMailer类{var$Priority=3;以及下面列出的其他类。抱歉,我不是真的想知道它是如何工作的,只是想知道确切的放置内容和位置,以及关于时区,我需要设置它,设置什么位置,什么时区格式?抱歉我的无知,谢谢,@Kaivosukeltaja讨论了这个问题。在您的fgcontactform中添加
date.timezone=“America/New_York”
在文件的顶部。你指的是我的第1612行-$tz=date('Z');,我如何以那种格式插入date.timezone=“Australia/Sydney”?你指的是什么php.ini文件,我的下载包根本没有这个文件,除非你是说在我的服务器上?谢谢你是说我应该重写{header('位置:$url”);退出;}到{header(“位置:$url”);退出;}.变量$url呢?@KaivosukeltajaYes,我的意思是在服务器上。正确的路径取决于您的安装,但通常可以在以
/etc/php
开头的路径中找到。在我的Ubuntu上,它位于
/etc/php/5.6/apache2/php.ini
中。要快速修复,您可以添加
日期\u默认时区设置(“澳大利亚/悉尼”)“
在第1612行之前,但我建议在php.ini中全局设置正确的时区,这样您就不会再次遇到相同的问题。难道什么都没有发生吗?您是否正在查看我的第1612行等,如果代码所在的位置,您将如何重写?假设您在澳大利亚悉尼?
143-  header("Location: $url");
144-  exit;
date.timezone="Australia/Sydney"