【问题标题】:wrong parameter count error in mysql via php通过php在mysql中错误的参数计数错误
【发布时间】:2009-02-13 19:45:16
【问题描述】:

我已经为此苦苦挣扎了太久,但我没有看到任何错误。

我有一张桌子,里面有很多地点。当我通过我的 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());

【问题讨论】:

  • 请贴代码sn-p;我敢打赌,这不是传递给 mysql_query() 的确切查询。

标签: php mysql


【解决方案1】:

尝试将第三行替换为

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

(请注意,我已将第二个 mysql_query() 替换为 mysql_error()。)

【讨论】:

  • 当然!我怎么会傻到现在才注意到这一点!谢谢Pourquoi。
【解决方案2】:

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

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

【讨论】:

    【解决方案3】:

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

    另外,在你的 SQL 中,我猜 locastions 应该是 locations

    【讨论】:

      【解决方案4】:

      能否请您显示导致此错误的 PHP?如果我猜的话,我会说这是您正在创建的 SQL 中放错位置的引号,导致参数计数关闭。

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

      这会解析成多个参数。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-03-15
        • 1970-01-01
        相关资源
        最近更新 更多