Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente di HTML.it
    Registrato dal
    Oct 2009
    Messaggi
    78

    Suggerimenti per Pulsante: leggi post più vecchi

    Salve,

    mi sto cimentando principalmente a scopo di studio nella realizzazione di una home page stile blog e volevo chiedervi un suggerimento su una struttura che mi lascia un poco perplesso.

    Premessa fatta che le mie idee di php ed affini sono meramente teoriche e per tanto mi scuso anticipatamente se scriverò delle corbellerie, ma arriviamo al dunque:

    Nella mia hompage saranno presenti i titoli degli ultimi articoli creati e questi sono contenuti in un div

    Tramite apposita schermata comunicante con il database sarà possibile introdurne di nuovi

    A questo punto mi chiedo: in questo modo non si creerà un lungo elenco di titoli? Sarebbe un effetto piuttosto indesiderato...Stessa cosa vale per i commenti

    E qui entra in soccorso la bellissima e collaudatissima idea del pulsante: visualizza post/messaggi/articoli precedenti

    Ma di base come dovrei pensarlo questa struttura? I post precedenti dovranno essere contenuti in un div all'occorrenza non visibile?

    Per tanto vi chiedo qualche suggerimento, una linea guida se vogliamo o un re-indirizzamento a possibile materiale di studio inerente a questa tematica.
    A voi tutti anticipati ringraziamenti e cordiali saluti,

    Francesco M.

  2. #2
    Utente di HTML.it L'avatar di m4rko80
    Registrato dal
    Aug 2008
    residenza
    Milano
    Messaggi
    2,654
    Ciao, quello che serve e' appunto una paginazione.
    Il concetto di avere tutto e nascondere i blocchi e' sbagliato perchè vorrebbe dire estrarre sempre tutto dal database e nascondere ( a lungo andare lo script e la pagina sarebbe sempre più pensante, sia per i tempi di caricamento lato server che rendering di pagina).
    Quello che dovresti fare è decidere quanti dati mostrare per pagina. Di conseguenza quello che ti serve è calcolare un totale dei dati presenti a db, settare quanti ne vuoi per pagine e quindi fare una query iniziale coi soli dati della prima pagina.
    codice:
    //$tot = Query per totale -> risultato es. 200 record
    //$perPage = 10;
    //$totalePagine =  ceil($tot/$perPage);
    //Query dati prima pagina usando LIMIT e OFFSET tipo "SELECT * FROM table LIMIT 0, $perPage" (dall'inizio i primi 10)
    In pagina coi dati sopra, crei la paginazione/link e passerai via url in GET page=X
    Se presente $_GET['page'] rifai la stessa cosa calcolando però l'offset corretto in base alla pagina passata, in pagina due ad esempio la query sarà tipo "SELECT ..... LIMIT 10,10" e così via.

    I modi per fare la paginazione sono diversi ovviamente, in GET con parametri visibili in url, in POST, o in Ajax per non ricaricare tutta la pagina.
    Questo è uno dei tanti esempi

  3. #3
    Utente di HTML.it
    Registrato dal
    Oct 2009
    Messaggi
    78
    Quote Originariamente inviata da m4rko80 Visualizza il messaggio
    Ciao, quello che serve e' appunto una paginazione.
    Il concetto di avere tutto e nascondere i blocchi e' sbagliato perchè vorrebbe dire estrarre sempre tutto dal database e nascondere ( a lungo andare lo script e la pagina sarebbe sempre più pensante, sia per i tempi di caricamento lato server che rendering di pagina).
    Quello che dovresti fare è decidere quanti dati mostrare per pagina. Di conseguenza quello che ti serve è calcolare un totale dei dati presenti a db, settare quanti ne vuoi per pagine e quindi fare una query iniziale coi soli dati della prima pagina.
    codice:
    //$tot = Query per totale -> risultato es. 200 record
    //$perPage = 10;
    //$totalePagine =  ceil($tot/$perPage);
    //Query dati prima pagina usando LIMIT e OFFSET tipo "SELECT * FROM table LIMIT 0, $perPage" (dall'inizio i primi 10)
    In pagina coi dati sopra, crei la paginazione/link e passerai via url in GET page=X
    Se presente $_GET['page'] rifai la stessa cosa calcolando però l'offset corretto in base alla pagina passata, in pagina due ad esempio la query sarà tipo "SELECT ..... LIMIT 10,10" e così via.

    I modi per fare la paginazione sono diversi ovviamente, in GET con parametri visibili in url, in POST, o in Ajax per non ricaricare tutta la pagina.
    Questo è uno dei tanti esempi

    Grazie mille per la dritta, confesso che non essendo il mio pane quotidiano la programmazione lato server non ho afferrato tutto pienamente nel dettaglio, ma comunque sia al momento credo mi basti sapere che il problema sia risolvibile con una paginazione di dati, anche perché da quel che vedo gli esempi proposti sono in php linguaggio che per questo sito/studio sto cercando di evitare completamente a favore di django, quindi mi limito ad afferrare la denominazione e la struttura teorica nell'eventualità possa essere più o meno analoga,

    Grazie ancora di cuore per il disturbo e l'impegno impiegato nel rispondermi,
    cordiali saluti,

    Francesco M.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.