这是mysql查询,每当有用户来我的网站发表评论时,我都想存储日期和时间。但它向我展示了这个背景:
"Parse error: syntax.. code'error, unexpected 'now' (T_STRING) in" $qry1='insert into life(title,quotation,photos,datetime) values('.$title.','.$quotation.','.$vphoto.''now())';'
r6vfmomb1#
试试这个。你误用了单引号和串联。
$qry1 = "INSERT INTO life ( title, quotation, photos, datetime ) VALUES('$title', '$quotation', '$vphoto', NOW())";
注意:您的查询对sql注入是完全开放的。了解prapred语句或pdo
jm2pwxwz2#
在php中,如果您使用单引号'x',那么在这里您必须使用双引号'。像这样$q='xyz(“djch”)'来维持转义序列。对于您的查询,您应该使用大括号来 Package php中的变量。
$q = "INSERT INTO life (v1,v2,v3) VALUES ('{$v1}','{$v2}','{$v3}')";
kknvjkwl3#
如果要存储当前时间,只需使用mysql的函数。
mysql_query("INSERT INTO `table` (`dateposted`) VALUES (now())");
如果需要使用php来实现,那么可以使用y-m-dh:i:s格式
$date = date('Y-m-d H:i:s'); mysql_query("INSERT INTO `table` (`dateposted`) VALUES ('$date')");
您的代码:
$qry1='insert into life(title,quotation,photos,datetime) values('.$title.','.$quotation.','.$vphoto.''now())';'
更改为:
$qry1="insert into life(title,quotation,photos,datetime) values('.$title.','.$quotation.','.$vphoto.', now())';'
vbkedwbf4#
$qry1='insert into life(title,quoting,photos,datetime)值(“'.$title.'”,“'.$quote.'”,“'.$vphoto.'”,now())';若您对值(“.$title.”)使用单个代码,请尝试上面的代码。编译器会发现查询的起点在“insert”附近,终点在“title”附近
9w11ddsr5#
我假设您使用的是php。运行查询时,应使用准备好的语句,因为它有很多好处,例如:减少了解析时间,因为您的查询只需准备一次。sql注入预防。
$conn = new mysqli($servername, $username, $password, $dbname); // Check that your connection was successful if ($conn->connect_error) { die("Connection failed: " . $conn->connect_error); } // prepare and bind $qry1 = $conn->prepare("INSERT INTO life (title, quotation, photos, datetime) VALUES (?, ?, ?, NOW())"); $qry1->bind_param("sss", $title, $quotation, $vphoto); // set parameters and execute $title = "Lorem Ipsum"; $quotation = "Lorem Ipsum"; $vphoto = "lorem@ipsum.com"; $qry1->execute(); $qry1->close(); $conn->close();
5条答案
按热度按时间r6vfmomb1#
试试这个。你误用了单引号和串联。
注意:您的查询对sql注入是完全开放的。了解prapred语句或pdo
jm2pwxwz2#
在php中,如果您使用单引号'x',那么在这里您必须使用双引号'。像这样$q='xyz(“djch”)'来维持转义序列。
对于您的查询,您应该使用大括号来 Package php中的变量。
kknvjkwl3#
如果要存储当前时间,只需使用mysql的函数。
如果需要使用php来实现,那么可以使用y-m-dh:i:s格式
您的代码:
更改为:
vbkedwbf4#
$qry1='insert into life(title,quoting,photos,datetime)值(“'.$title.'”,“'.$quote.'”,“'.$vphoto.'”,now())';
若您对值(“.$title.”)使用单个代码,请尝试上面的代码。编译器会发现查询的起点在“insert”附近,终点在“title”附近
9w11ddsr5#
我假设您使用的是php。运行查询时,应使用准备好的语句,因为它有很多好处,例如:
减少了解析时间,因为您的查询只需准备一次。
sql注入预防。