意外的T_CONSTANT_ENCAPSED_STRING

时间:2016-04-13 23:19:12

标签: php

当我尝试从我的Web应用程序中的表单传递信息时,我的MySQL查询会出现此错误消息:

解析错误:语法错误,意外''' CURRENT_TIMESTAMP''"' (T_CONSTANT_ENCAPSED_STRING)

mysql_query("INSERT INTO 'db'.'frs_Payment'('payid', 'amount', 'paydatetime', 'empnin', 'custid', 'pstatusid', 'ptid')
         VALUES('','".$amount"','CURRENT_TIMESTAMP','".$empnin."','".$custid"','"2"','".$ptid."');");

导致错误的是CURRENT_TIMESTAMP功能。我知道这可能是因为语音标记。但是我已经从时间戳中添加并删除了它们,但查询仍然无法运行。

我是否需要在其他地方添加语音标记?

2 个答案:

答案 0 :(得分:1)

mysql_query("INSERT INTO 'db'.'frs_Payment'('payid', 'amount', 'paydatetime', 'empnin', 'custid', 'pstatusid', 'ptid')
     VALUES('','$amount',CURRENT_TIMESTAMP(),'$empnin','$custid','2','$ptid');");

无需拆分双引号字符串,你到处都有太多的引号。另外,CURRENT_TIMESTAMP是一个sql函数,而不是字符串文字。

答案 1 :(得分:1)

你的PHP语法中有一个拼写错误。变化:

param1

为:

mysql_query("INSERT INTO 'db'.'frs_Payment'('payid', 'amount', 'paydatetime', 'empnin', 'custid', 'pstatusid', 'ptid')
         VALUES('','".$amount"','CURRENT_TIMESTAMP','".$empnin."','".$custid"','"2"','".$ptid."');");

错别字是自我解释的。

另请注意,{5.5}已弃用mysql_query,并且已在PHP 7.0.0中删除。