代码之家  ›  专栏  ›  技术社区  ›  RSilva

PHP脚本在浏览器上运行,但不使用wget

  •  0
  • RSilva  · 技术社区  · 17 年前

    我有一个bash-sctipt,通过wget运行5个php脚本。 每个php文件都会被调用,但在最后一个脚本中,我得到以下警告:

    mysql_query():提供的参数为 在中不是有效的MySQL链接资源 xyz。php,在线ABC

    真正奇怪的是,如果我通过浏览器运行相同的脚本,脚本运行正常,没有任何警告。

    这是我在ABC行附近的代码:

    $sqlSTR="INSERT INTO accounts_cstm (id_c, mtk_categoriascompradas_c) VALUES ('". $arr[1] . "', '" . $arr[0] . "')
                        ON DUPLICATE KEY UPDATE mtk_categoriascompradas_c= concat(mtk_categoriascompradas_c, '^,^$arr[0]')";        
    
    $ExecuteSQL = mysql_query ($sqlSTR, $DBConn) or
                    die ($sqlSTR); //warning on this line - line ABC
    

    我的SQL是完全有效的(如果我运行在“die”语句中输出的查询,它运行得很好),DBConn连接到数据库,所有其他脚本都运行良好,除了这个脚本。

    我真的不知道是什么原因造成的 警告 . 欢迎任何帮助。

    谢谢

    4 回复  |  直到 17 年前
        1
  •  4
  •   Oli    17 年前

    您的问题实际上在于数据库连接( $DBConn ).看看那个密码。插入一个变量转储,然后再次尝试设置。

        2
  •  1
  •   Maciej Łebkowski    17 年前

    始终使用 mysql_error() 当您看到此错误消息时。然后你就会知道确切的原因,为什么查询无效。

        3
  •  0
  •   BrynJ    17 年前

    您在查询中最后一次引用$arr[0]时肯定出现了问题-我认为应该是以下情况:

    $sqlSTR="INSERT INTO accounts_cstm (id_c, mtk_categoriascompradas_c) VALUES ('". $arr[1] . "', '" . $arr[0] . "')
    ON DUPLICATE KEY UPDATE mtk_categoriascompradas_c= concat(mtk_categoriascompradas_c, '^,^".$arr[0]."')";   
    
        4
  •  0
  •   Eddy    17 年前

    您使用wget调用的URL中是否有符号?如果您这样做,请确保您的shell不会将其解释为 send process to background