【发布时间】:2012-12-08 20:45:08
【问题描述】:
完全错误:
Fatal error: Uncaught exception 'Exception' with message 'DateTime::__construct()
[<a href='datetime.--construct'>datetime.--construct</a>]: Failed to parse time
string (Next log in) at position 0 (N): The timezone could not be found in the
database' in /home/bd92/public_html/login.php:144 Stack trace:
#0 /home/bd92/public_html/login.php(144): DateTime->__construct('Next log in')
#1 {main} thrown in /home/bd92/public_html/login.php on line 144
此错误发生在这一行:
$unbanned = new Datetime($dbunbanned);
它进入数据库,并在用户被解禁时获取。
然后它会生成一个日期时间,以便我可以将其与当前日期进行比较,并查看禁令是否已过期,但我收到此错误。
【问题讨论】:
-
当这个错误被触发时,你可能应该说 $dbunbanned 是什么。更好的是,您应该能够将您的代码缩减为重现问题的非常短的测试用例。然后你可以询问你的测试用例。
-
这里设置,以及其他一些东西: $row = mysql_fetch_assoc($query); $dbid = $row['user_id']; $dbpass = $row['密码']; $dbuser = $row['用户名']; $dbbanned = $row['banned']; $dbbanreason = $row['banreason']; $dbunbanned = $row['unbannedon'];然后查询: $query = mysql_query("SELECT * FROM users WHERE username='$user'");
-
不,你不需要数据库来重现这个。错误消息告诉您
new DateTime调用失败。
标签: php fatal-error