我是所有这些MySQLi的新手,我似乎无法找到适合我的任何有用信息..我已尝试过以下代码,但无济于事:
if(isset($_GET['submit']))
{
$stamp = date("D M d, Y G:i a");
$mysqli->query("INSERT INTO down (timestamp, username) VALUES ('" . $stamp . "', '" . USER_NAME . "')");
}
我不知道我做错了什么,所以也许有些见解?或者,如果有人可以引用我的某些网站,那会很棒吗?因此,似乎没有什么对我有用!
HTML是:
<form method="post">
<b>Submit a downtime report*</b>: <input type="submit" name="submit" value="Report">
</form>
答案 0 :(得分:1)
您不必在PHP中使用date()函数。你可以在MySQL中使用NOW()或CURRENT_TIMESTAMP()
$mysqli->query("INSERT INTO down (`timestamp`, `username`) VALUES (NOW(), '" . USER_NAME . "')");
您可以找到更多日期功能here
我猜USER_NAME是一个不变的设置。
答案 1 :(得分:0)
答案 2 :(得分:0)
将此更改为
$mysqli->query("INSERT INTO down (timestamp, username) VALUES ('" . $stamp . "', '" . USER_NAME . "')");
到
$mysqli->query("INSERT INTO down (`timestamp`, `username`) VALUES ('" . $stamp . "', '" . USER_NAME . "')");
原因:timestamp
在SQL中也是type
因此您应该像这样使用它。
答案 3 :(得分:0)
&#34;时间戳&#34;是一个MySQL关键字,因此被解释为数据类型而不是列名,然后语法没有任何意义。您可以通过使用反向标记转义列名来解决此问题。对于所有表名和列名,这是一种很好的做法,无论它们是否是关键字。因此,如下更改查询应该有效:
$mysqli->query("INSERT INTO `down` (`timestamp`, `username`) VALUES ('" . $stamp . "', '" . USER_NAME . "')");