php insert语句错误

时间:2012-12-13 05:31:17

标签: mysql php

我在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

我找不到问题所在。请帮帮我

1 个答案:

答案 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'
    )
";

空白和缩进是你的朋友。我希望即使它没有解决你的具体问题,这也会有所帮助。