我在mysql中有一个查询只是为了插入一些数据 查询是
$insert_query_pur = "INSERT INTO `dbname`.`tblname` (`USER_NAME`,`PURCHASE_TYPE`,`PURCHASE_KEY`, `SUBSCRIPTION_ID`,`PURCHASE_DATE`,`NO_OF_ISSUE`,`MAGAZINE_ID`,`AppsCode`,`PROCESS_STATUS`,`User_price`,`Publisher_price`, `Publisher_price_inr`) VALUES ('$USER_NAME','$PURCHASE_TYPE','$PURCHASE_KEY','$SUBSCRIPTION_ID','$PURCHASE_DATE','$NO_OF_ISSUE','$MAGAZINE_ID','$AppsCode','$PROCESS_STATUS','$User_price','$Publisher_price','$Publisher_price_inr')";
但是当我执行此查询时出现错误
解析错误:语法错误,意外T_ENCAPSED_AND_WHITESPACE,预期在第685行/var/www/thewinkstore.com/magsonwink/modules/admin/support/classes/support_manage.class.php中的T_STRING或T_VARIABLE或T_NUM_STRING
我找不到问题所在。请帮帮我
答案 0 :(得分:2)
不要将所有内容放在一行中,在这种情况下,您可能会过快地忽略概述。
建议您对此类插入查询使用预准备语句,这样您就不需要自己构建SQL字符串。这在PHP手册中有解释。
对于临时改进,您可能希望首先将字符串分布在多行:
$insert_query_pur = "
INSERT INTO `dbname`.`tblname`
(
`USER_NAME`, `PURCHASE_TYPE`, `PURCHASE_KEY`,
`SUBSCRIPTION_ID`, `PURCHASE_DATE`, `NO_OF_ISSUE`,
`MAGAZINE_ID`, `AppsCode`, `PROCESS_STATUS`,
`User_price`, `Publisher_price`, `Publisher_price_inr`
)
VALUES
(
'$USER_NAME', '$PURCHASE_TYPE', '$PURCHASE_KEY',
'$SUBSCRIPTION_ID', '$PURCHASE_DATE', '$NO_OF_ISSUE',
'$MAGAZINE_ID', '$AppsCode', '$PROCESS_STATUS',
'$User_price', '$Publisher_price', '$Publisher_price_inr'
)
";
空白和缩进是你的朋友。我希望即使它没有解决你的具体问题,这也会有所帮助。