Page 1 of 1

Zwracanie poprzez Ajax danych, które są wysyłane przez skrypt PHP

Posted: Tue May 30, 2017 10:54 am
by Kamil Szmit
Mam w oddzielnym skrypcie "donation.php" w moim dodatku typu Ajax metodę:

Code: Select all

function donateInitiation($req = null, $res = null) {
   // (...)   
                                   ob_end_clean();
                                   header("Connection: close\r\n");
                                   header("Content-Encoding: none\r\n");
                                   ignore_user_abort(true);
                                   ob_start(); 
                                   json($copy); // json = echo json_encode, zwrócenie danych w formacie JSON
                                   $size = ob_get_length();
                                   header("Content-Length: $size"); 
                                   ob_end_flush();
                                   flush(); 
                                   ob_end_clean();
                                   if(session_id()) 
                                   {
                                        session_write_close();
                                   }
   // (...) - dalsze operacje
}  
Czy mogę w głównym skrypcie dodatku zwrócić wartość wysłaną przez metodę „donateInitiation”? Próbuję zrobić to tak, ale nic nie jest zwracane:

Code: Select all

jimport('joomla.plugin.plugin');
class plgAjaxLatestarticles extends JPlugin{
    function onAjaxLatestarticles()    {
        require_once "donation.php";
        $myShop->donateInitiation();return;
    }}  
Działa zwracanie przez skrypt "donation.php" danych, gdy odwołuję się do niego bezpośrednio poprzez Ajax, ale w Joomli jest to niepolecane i blokowane często na poziomie serwera. W miarę dobrze działa też zwracanie danych, po usunięciu kodu tuż przed i po "json($copy);" (gdy skrypt wysyła dane konstrukcją "echo" na końcu wywołaniu metody). Czy można zwrócić w dodatku Joomla typu Ajax dane, które są zwracane przez skrypt PHP, który pracuje dalej po zwróceniu danych konstrukcją "echo"? Czy można zrobić coś takiego za pomocą modułu lub innego typu rozszerzenia Joomla? Proszę o pomoc.

Proszę o przeniesienie tematu, jeśli to nie jest właściwe dla niego miejsce.

Re: Zwracanie poprzez Ajax danych, które są wysyłane przez skrypt PHP

Posted: Fri Jun 09, 2017 10:20 am
by Giraffex
Spróbuj napisać na anglojęzycznym forum. Tam prędzej dostaniesz odpowiedź.

Re: Zwracanie poprzez Ajax danych, które są wysyłane przez skrypt PHP

Posted: Fri Jun 09, 2017 10:31 am
by Kamil Szmit