Come restituire i dati da PHP a una chiamata jQuery ajax

Sto postando alcuni dati usando ajax. Voglio manipolare i dati e tornare allo script jQuery chiamante.

Ecco la mia jQuery:

$.ajax({ type: "POST", url: "somescript.php", datatype: "html", data: dataString, success: function() { //do something; } }); 

Ecco il mio somescript.php sul server:

   

Sto facendo questo correttamente sul lato server, e come faccio ad accedere alla stringa di ritorno quando la chiamata ajax completa?

L’avevo capito. È necessario utilizzare echo in PHP anziché restituire.

  

E il jQ:

 success: function(data) { doSomething(data); } 

È un argomento passato alla tua funzione di successo:

 $.ajax({ type: "POST", url: "somescript.php", datatype: "html", data: dataString, success: function(data) { alert(data); } }); 

La firma completa è success(data, textStatus, XMLHttpRequest) , ma puoi usare solo il primo argomento se è una semplice stringa che ritorna. Come sempre, vedi i documenti per una spiegazione completa 🙂

Sì, il modo in cui lo stai facendo è perfettamente legittimo. Per accedere a tali dati sul lato client, modifica la tua funzione di successo per accettare un parametro: dati.

 $.ajax({ type: "POST", url: "somescript.php", datatype: "html", data: dataString, success: function(data) { doSomething(data); } });