Posted 5 мая, 20186 yr comment_147100 Всем привет, создаю плагин, в хуке кода создал функцию для обработки ajax запроса (буду из бд выдавать список языков для выпадающего списка), суть проблемы: return не работает, var_dump тоже. Если обращаюсь аяксом к контроллеру, в котором моя функция function MyAction () { return 'answer!'; } то в ответ прилетает html код части страницы, т.е. с head, body но без answer. Если в контроллер добавлю \IPS\Db::i()->output = 'Answer!'; То при переходе по url адресу, выдает строку 'Answer!' но не на пустой странице, а на странице с шаблоном форума, в ответ на аякс запрос, все так же прилетает кусок страницы с исходным кодом. Подскажите пожалуйста, как в IPS 4 работет return в контроллерах, как мне отвечать на аякс запрос и что я делаю не так? Link to comment https://ipbmafia.ru/topic/19790-ne-srabatyvaet-return-i-var_dump/ Share on other sites Больше вариантов
5 мая, 20186 yr comment_147102 Я думаю стоит немного почитать как работает return , она вернет строку, но не отобразит её. Класс \ips\bd отвечает за sql Попробуй вернуть так $var = [ '1' => 'q', '2' => 'z', ]; \IPS\Output::i()->json( $var ); Link to comment https://ipbmafia.ru/topic/19790-ne-srabatyvaet-return-i-var_dump/?&do=findComment&comment=147102 Share on other sites Больше вариантов
5 мая, 20186 yr Author comment_147103 О! Сейчас попробую, спасибо Link to comment https://ipbmafia.ru/topic/19790-ne-srabatyvaet-return-i-var_dump/?&do=findComment&comment=147103 Share on other sites Больше вариантов
5 мая, 20186 yr Author comment_147106 3 часа назад, greykoo сказал: Я думаю стоит немного почитать как работает return , она вернет строку, но не отобразит её. Класс \ips\bd отвечает за sql Попробуй вернуть так $var = [ '1' => 'q', '2' => 'z', ]; \IPS\Output::i()->json( $var ); Спасибо, работает, но такой вопрос: return в IPS не воспринимается? Я в доках этот момент не нахожу, может есть линк или в конце концов литература по ips как бы это не звучало... Link to comment https://ipbmafia.ru/topic/19790-ne-srabatyvaet-return-i-var_dump/?&do=findComment&comment=147106 Share on other sites Больше вариантов
6 мая, 20186 yr comment_147111 7 часов назад, Clouds сказал: Спасибо, работает, но такой вопрос: return в IPS не воспринимается? Я в доках этот момент не нахожу, может есть линк или в конце концов литература по ips как бы это не звучало... Это общая документация PHP. Задача return вернуть, а не отобразить. Возможно ты перепутал с оператором echo Link to comment https://ipbmafia.ru/topic/19790-ne-srabatyvaet-return-i-var_dump/?&do=findComment&comment=147111 Share on other sites Больше вариантов
6 мая, 20186 yr Author comment_147114 1 час назад, greykoo сказал: Это общая документация PHP. Задача return вернуть, а не отобразить. Возможно ты перепутал с оператором echo Так в том то и дело, если я делаю Ajax запрос то return из контроллера должен же вернуть мне либо переменную, либо массив, либо объект... кстати echo тоже не срабатывает Link to comment https://ipbmafia.ru/topic/19790-ne-srabatyvaet-return-i-var_dump/?&do=findComment&comment=147114 Share on other sites Больше вариантов
6 мая, 20186 yr comment_147116 28 минут назад, Clouds сказал: Так в том то и дело, если я делаю Ajax запрос то return из контроллера должен же вернуть мне либо переменную, либо массив, либо объект... кстати echo тоже не срабатывает Тогда в таком случае тебе нужно возвращать строку или массив данных через \IPS\Output::i()->json и потом с ними работать Link to comment https://ipbmafia.ru/topic/19790-ne-srabatyvaet-return-i-var_dump/?&do=findComment&comment=147116 Share on other sites Больше вариантов
6 мая, 20186 yr Author comment_147117 3 минуты назад, greykoo сказал: Тогда в таком случае тебе нужно возвращать строку или массив данных через \IPS\Output::i()->json и потом с ними работать Понял... есть где-то классам документация или хотяб список, потому что опять же либо я баран и не вижу в доках, либо в доках этого нет? Link to comment https://ipbmafia.ru/topic/19790-ne-srabatyvaet-return-i-var_dump/?&do=findComment&comment=147117 Share on other sites Больше вариантов
6 мая, 20186 yr comment_147123 2 часа назад, Clouds сказал: Понял... есть где-то классам документация или хотяб список, потому что опять же либо я баран и не вижу в доках, либо в доках этого нет? Весь функционал лежит тут system почти всякая функция описывается, да и по классу интуитивно понятно что она означает Вся документация тут https://invisioncommunity.com/developers/docs/general/enabling-developer-mode-r23/ Link to comment https://ipbmafia.ru/topic/19790-ne-srabatyvaet-return-i-var_dump/?&do=findComment&comment=147123 Share on other sites Больше вариантов
6 мая, 20186 yr Author comment_147124 14 минут назад, greykoo сказал: Весь функционал лежит тут system почти всякая функция описывается, да и по классу интуитивно понятно что она означает Вся документация тут https://invisioncommunity.com/developers/docs/general/enabling-developer-mode-r23/ Понял, спасибо! Link to comment https://ipbmafia.ru/topic/19790-ne-srabatyvaet-return-i-var_dump/?&do=findComment&comment=147124 Share on other sites Больше вариантов
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.