ragazzi è stato pubblicato il mio primo articolo (su quattro totali) su AJAX
mi dite sinceramente che ne pensate??
ecco l'url
http://javascript.html.it/articoli/leggi/1961/xchat/
PS l'articolo tratta di come realizzare una chat :P
ragazzi è stato pubblicato il mio primo articolo (su quattro totali) su AJAX
mi dite sinceramente che ne pensate??
ecco l'url
http://javascript.html.it/articoli/leggi/1961/xchat/
PS l'articolo tratta di come realizzare una chat :P
www.gext.it
non interessa proprio a nessuno??![]()
![]()
www.gext.it
Ciao,
ho dato un'occhiata alla tua chat. Basilare ma veloce come funzionamento.
Anche io ho provato tempo fa a realizzare una chat in ajax e funzionava... il problema è che con 4 o 5 utenti "sclerava" e iniziava a perdere gli utenti per strada. Ancora non sono riuscito a capire se era il troppo carico o cosa. Se si blocca con solo 5 utenti figuriamoci con altri.
Ti volevo chiedere, cosa è la libreria JSON che hai usato? A cosa serve in particolare?
Grazie
The Trooper
è una libreria che permette di encodare qualsiasi entità php nella corrispondente notazione JSON...
basta chiamare il metodo encode e grazie all'introspection avrai una bella stringa JSON da passare a javascript
www.gext.it
Grazie 1000 x l'info.
E complimenti ancora per la chat ajax
The Trooper
guarda secondo me è una libreria obbligatoria per chi utilizza JSON come protocollo per comunicare tra server e client...
www.gext.it
peccato che la coversione da e verso il PHP sia estremamente lenta e non in grado di gestire carichi elevati di dati.Originariamente inviato da tarini
guarda secondo me è una libreria obbligatoria per chi utilizza JSON come protocollo per comunicare tra server e client...
Se c'è PHP dietro e non si pensa alla portabilità per altri linguaggi server, consiglio sempre di usare serialize ed unserialize al posto delle classi JSON che sono tutte lente, non perchè scritte male ma perchè inevitabilmente complesse in conversione a causa del mancato supporto unicode di PHP.
Per spostare il peso dei calcoli di conversione da PHP a JS, tramite l'uso di serialize, basta utilizzare questa: PHP_Serializer
Per quanto riguarda l'articolo mi sembra buono, in generale, e ti faccio i complimenti.
Restano dubbi sul codice, soprattutto quello server (quello client non l'ho ancora visto) ...
perchè utilizzi una globale per il database quando puoi passarlo per riferimento ?
perchè crei un id univoco sfruttando MD5 su un time che si presume sia già univoco (32 VS 10 caratteri) rischiando di creare grossi problemi se 2 o più utenti si connettono nello stesso secondo ? ... un microtime, con SHA1 o MD5, l'avrei preferito di gran lunga, anche se ci sono metodi alternativi per gestire proprio le sessioni in db (vedi articolo di gm)
Per il resto, presumo che come articolo sia una base per creare qualcosa di più complesso, quindi rinnovo i complimenti![]()
ti risponderò velocemente:
- perchè DB globale = semplicemente per comodità, sono abituato ad avere piu oggetti che necessitano della connessione e quindi in questo modo evito di dover passare sempre un parametro (dici che ci sono particolari problemi a utilizzare la connessione "globalmente" ?? )
- perchè userId generato dal time e non dal microtime = non cè un motivo valido... sinceramente non ci ho pensato... ammetto pubblicamente che sarebbe stato meglio partire dal microtime![]()
- precisazione mia: questo articolo e i prossimi (si ce ne saranno altri ajax-oriented) sono stati scritti con una forte vena formativa, quindi presenteranno sicuramente aspetti migliorabili e non efficientissimi, ma questo è voluto, soprattutto se l'aumento delle performance genera una diminuzione della leggibilità e comprensione del codice
PS sto dando un occhio al PHP Serializer :P
PS2 grazie per i complimenti
www.gext.it
altrochè, basta che includi uno script tuo o di altri che per sbaglio usa lo stesso nome (per altor un pò banale) per la variabile del $db e di colpo non ti funzionerà più niente (o di colpo si ha una globale per fare danni se per sbaglio qualcuno riesce ad infilare uno script suo tra i tuoi tramite un include o altro).Originariamente inviato da tarini
ti risponderò velocemente:
- perchè DB globale = semplicemente per comodità, sono abituato ad avere piu oggetti che necessitano della connessione e quindi in questo modo evito di dover passare sempre un parametro (dici che ci sono particolari problemi a utilizzare la connessione "globalmente" ?? )
La soluzione migliore è avere una variabile privata di una classe, reperibile ma non settabile con un metodo pubblico getDB(), allo stesso tempo è sempre preferibile non usare variabili globali col PHP
azz .. anche io ho scritto articoli Ajax oriented ...Originariamente inviato da tarini
- precisazione mia: questo articolo e i prossimi (si ce ne saranno altri ajax-oriented) sono stati scritti con una forte vena formativa, quindi presenteranno sicuramente aspetti migliorabili e non efficientissimi, ma questo è voluto, soprattutto se l'aumento delle performance genera una diminuzione della leggibilità e comprensione del codicedovremmo metterci d'accordo o m'hai rimpiazzato in toto data la mia poca disponibilità degli ultimi mesi stra incasinati ?
![]()
credo che i tuoi articoli siano piu "teorici" o sbaglio?? (con teorici intendo non strettamente collegati ad un esempio)
i miei invece spiegano la realizzazione di una certa applicazione...
![]()
![]()
www.gext.it