PDA

View Full Version : [Jquery] Ajax e JSON questi (a me) sconosciuti


Ludo237
08-05-2011, 11:25
Ciao ragazzi.
Inizio ad avere problemi sui miei script fatti in php e Jquery perchè utilizzo Ajax ma sono sicuro di non utilizzarlo al massimo del tuo potenziale:doh:
per adesso faccio una cosa del genere

var string = 'qualcosa='+$('#tag').val() ;
$.ajax({
url: 'get_dati.php',
data: 'string',
type: 'GET',
success: function(response) {
alert(response) // o qualsiasi altra cosa...
}
});


questo è un tipico utilizzo che faccio di Ajax e Jquery.. però dall'altra parte (get_dati.php) devo effettuare un operazione che non mi piace molto

if(isset($_GET['string']) && !empty($_GET['string']))
{
// azioni da svolgere
echo $risultato ;
}


il problema è che ho tutto un blocco di risposta ($risultato) che non posso gestire a mio piacimento.... se io volessi prendere i risultati di get dati e maneggiarli a mio piacimento? JSON mi potrebbe aiutare? come posso implementarlo? come si usa?

black_wizard
08-05-2011, 12:01
La risposta è Si però dipende da vari fattori.
Prima di tutto il risultato come esce a video? e poi come vorresti maneggiarlo?

se il risultato è tutto un blocco di codice html..la cosa migliore è formattare già il risultato per bene in html nella pagina get_dati.php così quando fa il response basta
$("#prova").html(response);
ed hai fatto.
Mentre se vuoi maneggiare i singoli dati per poi manipolarli in seguito...potresti inserire i dati nell'echo con un separatore..
esempio => 50|Bello|immagine.jpg|HWU
il primo valore sta per un fantomatico id, il secondo sta per un titolo, la terza un link di immagine, la 4° nome categoria.
Quando ottieni il response basta un semplice split e ottieni dentro un array i singoli campi che poi gestirai a tuo piacimento sempre in linguaggio java.
var valori = response.split('|');

oppure invece di usare un separatore potresti convertire il risultato in un array compatibile json con il comando json_encode del php.

Kenger
08-05-2011, 16:12
Se vuoi c'è un altro thread poco più sopra che parla di una cosa molto simile, buttaci un occhio magari.
http://www.hwupgrade.it/forum/showthread.php?t=2349781