2009-02-13 95 views
0

我一直在努力,这太久了,我没有看到任何错误。错误的参数计数错误在mysql中通过php

我有一张表,包含一堆位置。当我通过我的php脚本添加一个位置时,出现'mysql_query()'错误的参数计数错误。

当我回应mysql查询时,一切都很好,我可以复制并粘贴到phpmyAdmin,一切都运行完美。

查询看起来像这样

INSERT IGNORE INTO locations (name, address, city, state, zip) VALUES ('Soboba Casino','23333 Soboba Road', 'San Jacinto', 'CA', '92581') 

我缺少的东西?为什么这不会在我的脚本中运行,而是在phpmyAdmin中运行?

对不起,错过了将在PHP中,进攻PHP似乎相当直截了当

// insert the venue 
$insertLoc="INSERT IGNORE INTO locastions (loc, address, city, state, zip) VALUES ('$venueName','$streetAddress', '$city', '$state', '$zip')"; 
echo $insertLoc; 
mysql_query($insertLoc)or die(mysql_query()); 
+0

请发布代码片段;我会打赌,这不是确切的查询被传递到mysql_query()。当然是 – Rob 2009-02-13 19:46:27

回答

3

尝试用

mysql_query($insertLoc)or die(mysql_error()); 

更换第三行(请注意,我把它换成第二mysql_query()mysql_error()。)

+0

!我怎么可能如此愚蠢到现在注意到!谢谢Pourquoi。 – pedalpete 2009-02-13 21:30:55

1

这是一个PHP的错误,而不是一个MySQL错误。检查你的PHP代码,并发布它,如果你需要更多的帮助。

问题编辑后编辑的答案: 这是die()子句。 mysql_query至少需要一个参数。其他人推荐使用mysql_error(),这可能是你的意思。

0

请问您能显示PHP导致此错误吗?如果我猜测我会说这是你创建的SQL中错误的引用,导致参数计数关闭。

mysql_query("INSERT IGNORE INTO locations (name, address, city, state, zip) VALUES ('$place", '$address', '$city', '$state', '$zip')"); 

这将解析成多个参数。

1

or die(mysql_query());应该or die(mysql_error());

而且,在你的SQL我猜locastions应该是locations