Joomla.it Forum

Non solo Joomla... => Sviluppo => : saprile 09 Apr 2018, 11:57:27

: [RISOLTO] Utilizzo di com_ajax in modulo custom
: saprile 09 Apr 2018, 11:57:27
Buongiorno a tutti, ho la necessità di utilizzare una chiamata ajax in un modulo scritto da me. Per fare questo ho seguito la documentazione ufficiale su https://docs.joomla.org/Using_Joomla_Ajax_Interface ma sto riscontrando un problema sulla composizione dell'URL che esegue la richiesta asincrona. Precisamente chiamo (con ajax) l'url previsto, e cioè:

/index.php?option=com_ajax&module=NOMEMODULO&format=json&method=getUtente

ma ho la necessita, al metodo "getUtente" che nel file helper del modulo ha il nome "getUtenteAjax", di passare l'ID dell'utente da selezionare, e quindi ho provato a comporlo in questa maniera:

/index.php?option=com_ajax&module=NOMEMODULO&format=json&method=getUtente&id=150

Il problema è che al metodo "getUtente", l'ID non arriva proprio. Qualcuno saprebbe spiegarmi come posso far arrivare questo valore nel metodo che esegue la query?

Grazie in anticipo.
: Re:Utilizzo di com_ajax in modulo custom
: Alex21 09 Apr 2018, 13:37:24
Ciao,
se ho capito il metodo "getUtente" è scritto da te e hai anche disponibile l' id=150  dell'utente nel javascript del browser.
Credo che per passarlo al php si possa leggere la query che arriva, così per esempio:
:
query ($_SERVER['REQUEST_URI']):  /index.php?option=com_ajax&module=NOMEMODULO&format=json&method=getUtente&id=150
 
$idUtente = filter_input(INPUT_GET, 'id');
e $idUtente dovresti ritrovarlo 150
Oppure si può passarlo al php mediante POST cioè inserendolo in un <input> di tipo hidden e leggendolo con
:
$input = filter_input(INPUT_POST, "idInput");
dove "idInput" è l'id dell' input se lo invii a mezzo FormData() di javascript   
o anche senza <input> hidden mettendolo in una variabile semplice che formatti json con l'istruzione  JSON.stringify(obj);  del javascript. In questo caso bisogna decodificare json nel php.  json_decode ($string) prima di poterlo leggere.

Ci sono diversi modi penso.
Bye!
: [RISOLTO] Re:Utilizzo di com_ajax in modulo custom
: saprile 09 Apr 2018, 14:50:11
Grazie Alex21, sei stato utilissimo, hai ragione, con $idUtente = filter_input(INPUT_GET, 'id'); funziona correttamente.


Grazie!
: Re:Utilizzo di com_ajax in modulo custom
: Alex21 09 Apr 2018, 17:33:57
Non c'è di che.
Ciao!
: Re:Utilizzo di com_ajax in modulo custom
: marine 09 Apr 2018, 21:46:58
@saprile
[RISOLTO] va inserito all'inizio del tuo primo post, dove l'hai inseirto tu è praticamente inutile.
: Re:[RISOLTO] Utilizzo di com_ajax in modulo custom
: saprile 10 Apr 2018, 08:46:59
Eh si, fatto!