mysql_query(" INSERT INTO accounting(transid,unixtime,username, 描述,数量,类型,时间)价值(' $ randomtransid',' 0',' $ yti', ' BLVD优惠完成' $ theamount','积分',' $ dateandtime')");
上面的示例代码是我的MySQL查询,但每次刷新页面时都不会将其添加到MySQL数据库中...
我该怎么办?
============= 解决:
添加"mysql_error();",
后,这是错误:
查询失败:重复输入...以获取密钥'唯一性'
我通过更改数据库表的结构来修复此问题。
由于
=============
答案 0 :(得分:1)
表名后需要一个空格。否则它看起来像一个函数。
mysql_query("INSERT INTO accounting(transid, unixtime, username, description, amount, type, time) VALUES('$randomtransid', '0', '$yti', 'BLVD Offer Completion', '$theamount', 'points', '$dateandtime')");
^^^^^^^
HERE
应该是:
mysql_query("INSERT INTO accounting (transid, unixtime, username, description, amount, type, time) VALUES('$randomtransid', '0', '$yti', 'BLVD Offer Completion', '$theamount', 'points', '$dateandtime')");
一些注意事项:
如果您在代码中检查了错误,那么您可以快速轻松地抓住这一点。始终寻找并处理错误。在你的情况下,调用mysql_error()
就可以了。
You shouldn't use mysql_*
functions in new code。它们不再被维护and are officially deprecated。请参阅red box?转而了解prepared statements,并使用PDO或MySQLi - this article将帮助您确定哪个。如果您选择PDO,here is a good tutorial。
由于我无法在您的代码中明确地处理此问题,因此我必须假设您是 向SQL injections开放。