Buongiorno a tutti, dato il mio problema precedentemente irrisolto mi sono messo sotto a leggiucchiare un pò in giro, trovandomi di fronte alla verità che nel complesso jquery come framework alleggerisce molto il mio lavoro sul progetto che sto realizzando, quindi mi sono armato di santa pazienza e ho iniziato a lavorarci.
Ed immancabili ecco i primi intoppi :P
Devo gestire una sorta di Box contenente i messaggi inseriti dall'utenza, quindi tramite la funzione $.ajax ho gestito nell' OnLoad della pagina una chiamata in GET che recupera i dati da una pagina in php, restituendo come risultato il nome e il messaggio di ogni utente degli ultimi 20 minuti.
codice:
function getMEX() {
$.ajax( {
type:'GET',
data:'luogo=3',
url:'motore_prova.php',
async: true,
success:function(msg) {
$("#chat").append(msg);
}
} );
}
Ora, quello di cui ho bisogno è far si che, quando l'utente invia un messaggio tramite il form sotto questi possa visualizzare solo il il suo messaggio nuovo OLTRE a quello già stampati a video, quindi sempre tramite $.ajax faccio partire una chiamata POST che invia il nome e il messaggio ad una pagina che inserisce i dati nel database.
codice:
function invioMEX() {
var stringa = $("#datichat").serialize();
$.ajax( {
type:'POST',
data:stringa,
url:'invioazioni.php',
async: true,
success:function(msg) {
alert (msg + 'inviata');
}
} );
}
Quello che mi manca da inserire ora è la possibilità di stampare il messaggio inserito dall'utente oltre a quelli che già ci sono fino ad un massimo di 20 minuti fa, e quindi non far aggiornare di nuovo tutta la chiamata (stampando così oltre a quelli vecchi ancora quelli vecchi con in più il nuovo messaggio). Quello che non riesco a capire è come gestirmi nella funzione "success: function(msg)" i dati restituiti dalla chiamata singolarmente (e non in blocco).
Qualcuno sa aiutarmi gentilmente?