|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Senior Member
Iscritto dal: Apr 2009
Città: Aci Catena (CT)
Messaggi: 1021
|
[PHP] Ordinamento dinamico degli elementi visualizzati
Sera!
Ho realizzato un semplicissima pagina PHP con la quale visualizzo i record presenti nel database, supponiamo: Codice PHP:
- ORDER BY id DESC - ORDER BY price - ORDER BY name etc... Come faccio a realizzarlo senza che la pagina venga ricarica e quindi con un refresh della visualizzazione degli elementi secondo l'ordinamento scelto? Grazie. |
![]() |
![]() |
![]() |
#2 |
Senior Member
Iscritto dal: Nov 2010
Città: Londra
Messaggi: 620
|
|
![]() |
![]() |
![]() |
#3 |
Senior Member
Iscritto dal: Apr 2009
Città: Aci Catena (CT)
Messaggi: 1021
|
Uhm...grazie...vedrò di dargli un'occhiata!
![]() |
![]() |
![]() |
![]() |
#4 |
Senior Member
Iscritto dal: Apr 2009
Città: Aci Catena (CT)
Messaggi: 1021
|
L'ho visto, ma sembra che sia più adatto alla visualizzazione di una griglia di lavoro tipo Excel o simili.
Io invece dovrò usarlo per una pagina che contiene informazioni riguardanti appartamenti, quindi con Immagini, Tiolo, etc...organizzati in blocco verticali...per capirci un pò la disposizione che hai Ebay annunci... |
![]() |
![]() |
![]() |
#5 |
Senior Member
Iscritto dal: May 2007
Città: DiSaronno Originale
Messaggi: 2374
|
Io caricherei l'intero div o pagina, non so cos'hai, in ajax
__________________
Dell XPS 9570 Powered by Arch Linux || Motorola One Vision Ho concluso con raffaelev, Iceworld, stebru, Dichy, AXIP, Quakeman e Swampo |
![]() |
![]() |
![]() |
#6 |
Senior Member
Iscritto dal: Apr 2009
Città: Aci Catena (CT)
Messaggi: 1021
|
|
![]() |
![]() |
![]() |
#7 | |
Senior Member
Iscritto dal: May 2007
Città: DiSaronno Originale
Messaggi: 2374
|
Quote:
Ciao
__________________
Dell XPS 9570 Powered by Arch Linux || Motorola One Vision Ho concluso con raffaelev, Iceworld, stebru, Dichy, AXIP, Quakeman e Swampo |
|
![]() |
![]() |
![]() |
#8 | |
Senior Member
Iscritto dal: Apr 2009
Città: Aci Catena (CT)
Messaggi: 1021
|
Quote:
Potreste darmi un mano? Grazie. |
|
![]() |
![]() |
![]() |
#9 |
Senior Member
Iscritto dal: May 2007
Città: DiSaronno Originale
Messaggi: 2374
|
Lato js, un ajax lanciato così dovrebbe funzionare
Codice:
$.post("tuo_script.php",$("#id_tuaform").serialize(), function(xml){ var risultato=$(xml).find("risultato").text(); $("#id_tuo_div").html(risultato); }); Saluti
__________________
Dell XPS 9570 Powered by Arch Linux || Motorola One Vision Ho concluso con raffaelev, Iceworld, stebru, Dichy, AXIP, Quakeman e Swampo |
![]() |
![]() |
![]() |
#10 |
Senior Member
Iscritto dal: Jan 2014
Messaggi: 852
|
Secondo me è più corretto convertire i dati in formato json e costruire l'html direttamente sul client sfruttando jquery, in questo modo si riduce il traffico di rete e si sposta il peso dell'elaborazione sul client, rendendo il servizio più efficiente.
|
![]() |
![]() |
![]() |
#11 | |
Senior Member
Iscritto dal: May 2007
Città: DiSaronno Originale
Messaggi: 2374
|
Quote:
Se si sa che il server ha poca banda e poca potenza allora la soluzione client è buona, ma se si ha a che fare con client della grande guerra il caricamento e la composizione della pagina potrebbe essere veramente irritante. Io mi trovo spesso a che fare con client pessimi pieni zeppi di spyware e company e ti assicuro che preferisco far viaggiare il server
__________________
Dell XPS 9570 Powered by Arch Linux || Motorola One Vision Ho concluso con raffaelev, Iceworld, stebru, Dichy, AXIP, Quakeman e Swampo |
|
![]() |
![]() |
![]() |
#12 |
Senior Member
Iscritto dal: Jan 2014
Messaggi: 852
|
Secondo me (ma è solo una supposizione), costruire gli elementi della pagina invocando i metodi del DOM (anche attraverso jQuery) è comunque più efficiente di eseguire il parsing dell'html inviato dal server per poi generare i medesimi elementi. Inoltre il carico per il client è piccolo e generalmente poco influente sulle prestazioni; il carico sul server è altrettanto piccolo, ma va moltiplicato per tutte le richieste da servire.
E poi c'è il discorso della banda: se è vero che generalmente un server ha una banda di upload mostruosa, non è detto che lo stesso valga per il client. Ma il vero motivo per cui farei questa scelta è fondamentalmente la maggiore versatilità: sul client arrivano dati strutturati che possono essere formattati in modo dinamico dal browser. Pensa ad esempio di voler dare all'utente la possibilità di visualizzare i dati in diversi formati (ad esempio, elenco o tabellare): i dati sono già a disposizione, basta rigenerare gli elementi del DOM ed il gioco è fatto, nessuna connessione al server, nessun tempo di attesa. |
![]() |
![]() |
![]() |
#13 | ||
Senior Member
Iscritto dal: May 2007
Città: DiSaronno Originale
Messaggi: 2374
|
Quote:
Quote:
Se guardi ad esempio la flexigrid fa questo ragionamento, che d'accordo si occupa di tutto l'html, ma i dati li recupera ogni volta sul server con un ajax
__________________
Dell XPS 9570 Powered by Arch Linux || Motorola One Vision Ho concluso con raffaelev, Iceworld, stebru, Dichy, AXIP, Quakeman e Swampo |
||
![]() |
![]() |
![]() |
#14 |
Senior Member
Iscritto dal: Jan 2014
Messaggi: 852
|
Ma io mi riferivo alle mere operazioni di formattazione, non di ordinamento e ricerca, per quelle sono pienamente d'accordo con te, se i record sono tanti la paginazione deve essere eseguita sul server a livello DB.
Non ho mai usato flexgrid, però ho utilizzato datatables ed ho ovviamente implementato la parte php per farlo funzionare con ajax, è bastato personalizzare il template già fornito, i dati viaggiano in formato json, mentre il codice html viene generato direttamente da javascript sul browser. Poi è ovvio che ognuno fa come vuole, ad essere sincero ho iniziato anch'io generando il codice sul server, poi per necessità ho cambiato approccio e mi sono trovato molto meglio. |
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 09:33.