PHP-скрипт работает через браузер, но не с помощью wget - PullRequest
0 голосов
/ 13 мая 2009

У меня есть bash-sctipt, который запускает 5 php-скриптов через wget. Каждый php-файл вызывается, но в последнем скрипте я получаю это предупреждение:

mysql_query (): предоставленный аргумент недопустимый ресурс MySQL-Link в 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 ]

4 голосов
/ 13 мая 2009

Ваша проблема на самом деле связана с подключением к базе данных ($DBConn). Посмотрите на этот код. Вставьте var_dump и попробуйте снова wgetting.

1 голос
/ 13 мая 2009

Всегда используйте mysql_error(), когда вы видите это сообщение об ошибке. Тогда вы узнаете точную причину, по которой запрос был неверным.

0 голосов
/ 13 мая 2009

Содержит ли URL-адрес, который вы вызываете с помощью wget, амперсанд? Если вы это сделаете, убедитесь, что ваша оболочка не интерпретирует его как send process to background

0 голосов
/ 13 мая 2009

Что-то определенно выглядит неправильно с вашей последней ссылкой на $ 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]."')";   
...