Jump to content

Не срабатывает return и var_dump()


 Share

Recommended Posts

Всем привет, создаю плагин, в хуке кода создал функцию для обработки 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
Share on other sites

Я думаю стоит немного почитать как работает return , она вернет строку, но не отобразит её. Класс \ips\bd отвечает за sql 

 

Попробуй вернуть так

$var = [

	'1' => 'q',
	
	'2' => 'z',
	
];
	
\IPS\Output::i()->json( $var );

 

 

Link to comment
Share on other sites

3 часа назад, greykoo сказал:

Я думаю стоит немного почитать как работает return , она вернет строку, но не отобразит её. Класс \ips\bd отвечает за sql 

 

Попробуй вернуть так

$var = [

	'1' => 'q',
	
	'2' => 'z',
	
];
	
\IPS\Output::i()->json( $var );

 

 

Спасибо, работает, но такой вопрос: return в IPS не воспринимается? Я в доках этот момент не нахожу, может есть линк или в конце концов литература по ips как бы это не звучало... 

Link to comment
Share on other sites

7 часов назад, Clouds сказал:

Спасибо, работает, но такой вопрос: return в IPS не воспринимается? Я в доках этот момент не нахожу, может есть линк или в конце концов литература по ips как бы это не звучало... 

Это общая документация PHP. Задача return вернуть, а не отобразить. Возможно ты перепутал с оператором echo 

Link to comment
Share on other sites

1 час назад, greykoo сказал:

Это общая документация PHP. Задача return вернуть, а не отобразить. Возможно ты перепутал с оператором echo 

Так в том то и дело, если я делаю Ajax запрос то return из контроллера должен же вернуть мне либо переменную, либо массив, либо объект... кстати echo тоже не срабатывает

Link to comment
Share on other sites

28 минут назад, Clouds сказал:

Так в том то и дело, если я делаю Ajax запрос то return из контроллера должен же вернуть мне либо переменную, либо массив, либо объект... кстати echo тоже не срабатывает

Тогда в таком случае тебе нужно возвращать строку или массив данных через \IPS\Output::i()->json и потом с ними работать 

Link to comment
Share on other sites

3 минуты назад, greykoo сказал:

Тогда в таком случае тебе нужно возвращать строку или массив данных через \IPS\Output::i()->json и потом с ними работать 

Понял... есть где-то классам документация или хотяб список, потому что опять же либо я баран и не вижу в доках, либо в доках этого нет?

Link to comment
Share on other sites

2 часа назад, Clouds сказал:

Понял... есть где-то классам документация или хотяб список, потому что опять же либо я баран и не вижу в доках, либо в доках этого нет?

Весь функционал лежит тут system почти всякая функция описывается, да и по классу интуитивно понятно что она означает 

Вся документация тут https://invisioncommunity.com/developers/docs/general/enabling-developer-mode-r23/

Link to comment
Share on other sites

14 минут назад, greykoo сказал:

Весь функционал лежит тут system почти всякая функция описывается, да и по классу интуитивно понятно что она означает 

Вся документация тут https://invisioncommunity.com/developers/docs/general/enabling-developer-mode-r23/

Понял, спасибо!

Link to comment
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.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Ваша ссылка была автоматически строена.   Отображать как обычную ссылку

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...