1
mysql_query("
    INSERT INTO trades (id, cpair, oprice, cprice, bos, ooc, dateandtime) 
    VALUES (null, $currency, $openingprice, $closingprice, $buysell, 
    $openorclosed, $datetime"
);

这段代码有什么问题是这样的错误?

错误:

您的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册,以在第 1 行的 ' , 1, 1, 2012-10-12 13:57:08' 附近使用正确的语法

4

3 回答 3

1

您不能为 id 插入 NULL,这可能是必填字段。

如果它是自动递增的,只需忽略它,它就会自动填充。

于 2012-10-12T21:01:37.957 回答
0

任何字符串都需要在 MySQL 命令字符串中引用,并且您可能需要调用函数来从字符串转换日期时间。

于 2012-10-12T21:01:55.187 回答
0

哇!一方面,您不会将字符串视为字符串。您只是在该查询中回显任何内容。坏主意,如您所见,行不通。

您至少需要在 VALUES() 语句中作为字符串的每个 var 周围添加单引号。

mysql_query("
    INSERT INTO trades (id, cpair, oprice, cprice, bos, ooc, dateandtime) 
    VALUES (null, $currency, $openingprice, $closingprice, $buysell, 
    $openorclosed, '$datetime'"
);

下一步是切换到PDO并清理您的输入。

于 2012-10-12T21:02:52.247 回答