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

Moderator: Radek Suski

Post Reply
Kamil Szmit
Joomla! Fledgling
Joomla! Fledgling
Posts: 3
Joined: Tue May 30, 2017 10:41 am

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

Post by Kamil Szmit » Tue May 30, 2017 10:54 am

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.

User avatar
Giraffex
Joomla! Apprentice
Joomla! Apprentice
Posts: 36
Joined: Fri Jan 21, 2011 3:51 pm
Location: Guben
Contact:

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

Post by Giraffex » Fri Jun 09, 2017 10:20 am

Spróbuj napisać na anglojęzycznym forum. Tam prędzej dostaniesz odpowiedź.

Kamil Szmit
Joomla! Fledgling
Joomla! Fledgling
Posts: 3
Joined: Tue May 30, 2017 10:41 am

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

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



Post Reply

Return to “Modyfikacje i własne rozwiązania”