Здравствуйте, помогите со скриптом получения информации из vk.com средствами API. Его суть: В скрипт передаются параметры (id_ok - id группы, NameDataBase, NameTable - Имя базы данных и таблицы, куда будет добавляться информация из API). Далее идет отправка запрос в вк и получение ответа. Распарсивание происходит нормально, вся информация получается. После этого в переменную $node добавляется необходимая распарсеная информация и выводится в echo. И добавляется в базу данных. Это работает на многих группах ВК, но есть такие группы, где информация в БД добавляется, но echo $node ничего не выводит, а если закоментировать вывод echo $node то все работает. Подскажите почему так? Выкладываю файл скрипта. База данных MySQL, таблицы: group_info и project
debug http://phpfaq.ru/debug https://netbeans.org/kb/docs/php/debugging_ru.html https://php.ru/forum/threads/howto-...i-po-shagam-i-s-kartinkami.58974/#post-474550
У меня включен показ ошибок. Самое интересное что при выполнении скрипта ошибок не возникает! и скрипт даже не выводит мои остальные echo. А если закоментировать echo $node то все выводится.
ты не хочешь самостоятельно перепроверить полностью каждый шаг твоего скрипта? за тебя мало кто это сделает. или ты думаешь что отладка это включить отображение ошибок и всё?
Самостоятельно я уже проверил каждую строчку и не увидел ошибок! Именно поэтому я и спрашиваю на форуме.
@Babyka как может быть такая ситуация, когда ты перепроверяешь все данные которые попадают в скрипт и проследуешь за их изменениями, но не видишь момент когда что-то идёт не твоему плану? Я дал 3 ссылки, и ты за 20 минут всё прочитал, вник и выучил? Установил IDE и провёл построчную отладку? Может напихал в скрипт var_dump во все возможные места чтобы проследить за выполнение скрипта? Где тогда этот скрипт? Ты этот скрипт писал?
IDE не устанавливал. Подставлял echo на каждой строчке и обнаружил, что в строчке под номером 96, тоесть "echo $node;" - беда. Все что находится до нее выполняется без ошибок, так же все что после без ошибок. А вот с ней косяк. Скрипт с кучей echo выкладывать нет смысла. Скрипт написал полностью сам методом проб и ошибок.
Если ты сам не понимаешь досконально как он работает, то тебе будет очень сложно помочь. Я не злой, просто реальность такая. Тогда после 93 строки сделай var_export($node); и посмотри что там содержится.
Не правильно выразился значит. Я понимаю что делает каждая строчка и понимаю как это все работает. А "методом проб и ошибок" написал потому что пишу на php с нуля. Раньше никогда на нем не писал. Сделал как вы сказали, как только подставляю "var_export($node);" происходит та же беда что и с echo. Ничего не выводится
может в бесконечный цикл уходит? у тебя 93 линия это while ($flag); а значение этой переменной вроде как меняется в цикле ду-вайл. Добавь var_dump($flag); перед закрывающейся скобкой тела этого цикла (между 91 и 92 линиями) и посмотри какое актуальное значение флага у тебя получается перед завершением каждой из итераций.
PHP: var_export($node); die; лучше ставить, чтоб выполнение останавливалось. Можно var_export сменить на print_r, бывают случаи, когда var_export не работает, а print_r работает. Но у var_export удобнее формат вывода.
Вот веришь или нет, но скрипт выполнился, но ничего не произошло. Ни один echo ни var_dump, ничего не вывелось
@Ganzal советую новичкам var_export вместо var_dump так как они смогут давать массив и его можно будет удобно использовать в коде.
ну пайпни STDERR в файл какой-нибудь. или запусти в консоли с теми параметрами, с которыми дельфи-скрипт его запускает.