Visualizzazione dei risultati da 1 a 10 su 10
  1. #1

    Prelevare dati da database e impaginarli

    Ciao a tutti,
    spero che questa sia la sezione giusta: come faccio ad elencare i dati di un database in una pagina html? L'ideale sarebbe far sì che vengano visualizzati in un div.
    Mi spiego meglio: facciamo l'esempio che ho un database con 3 campi: id, titolo, descrizione.
    Io vorrei appena entro nel sito che uno script mi prenda le prime tot righe del database e me le visualizzi nella pagina, mettendo il titolo e sotto la descrizione.
    Come dicevo l'ideale sarebbe visualizzarli in un div poiché vorrei che la parte superiore della pagina non venisse ricaricata visto che contiene il menù del sito.
    La parte di programmazione in php non è un problema ma non ho la minima idea di come fare il resto, immagino si debba utilizzare ajax ma mi affido ai vostri consigli.
    Non chiedo che mi scriviate tutto il codice, vorrei solo qualche dritta sul sistema giusto da utilizzare.

    Grazie

  2. #2
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    Mettere insieme le condizioni "appena entro nel sito" e "la parte superiore della pagina non venisse ricaricata" e' una palese contraddizione... sei sicuro che non vuoi essere spostato su PHP?

    ciao
    Il guaio per i poveri computers e' che sono gli uomini a comandarli.

    Attenzione ai titoli delle discussioni: (ri)leggete il regolamento
    Consultate la discussione in rilievo: script / discussioni utili
    Usate la funzione di Ricerca del Forum

  3. #3
    Ok mi correggo...ci sono diverse sezioni nel menù in alto e vorrei che appena l'utente ne clicca una sotto gli appaiano i titoli con le relative descrizioni prelevati dalle prime 10 righe del database, tipo un sito di annunci per dirla in poche parole.
    Se pensi che sia il caso di spostarmi fai pure.

    Saluti

  4. #4
    a me rimane non chiarissimo il problema.
    Pensiero n°1: un div?? filologicamente un div è un contenitore, e tu parli di liste ergo il tag più appropriato è o <table> o <ul>/[list=1] .. che puoi puoi mettere in un div.

    Pensiero n°2: si interpreto correttamente, si, puoi usare ajax. Il concetto sarebbe questo:
    l'utente clicca e tu fai partire una richista asincrona (=la pagina non viene ricaricta) che punta su una pagina php a cui passi un id (tipo: miaPagina.php?id=link1)
    Lato server recuperi la querystring, interroghi il db a dovere e rispedisci del codice html alla pagina chiamante, poi manipolando il DOM con javascript inserisci questo frammento html dove ti interessa.
    Spero ti sia di aiuto
    Davide

  5. #5
    Grazie mille per il consiglio Davide, ora va meglio, sto provando a fare come dici ma ho un ultimo problema:
    io accedo ed invio dati ad un file php senza aggiornare la pagina (utilizzando ajax), questo file php preleva la riga che mi serve dal database e memorizza titolo e testo in 2 variabili, ora però queste 2 variabili dovrei utilizzarle nella pagina html di partenza, in modo da poter costruire la pagina dinamicamente (utilizzando DOM)...ma non posso inviare variabili da uno script php ad una pagina html che io sappia.
    Hai un'idea su come risolvere il problema?


    Saluti

  6. #6
    direi che hai due possibilità:
    1) passi lato client un pò di json, che conterrà le tue variabili. dopo ciò poi tranquillamente manipolare il dom come ti pare;
    2) costruisci un frammento di html lato server e ti spedisci quello, lato client lo andrai semplicemente ad incollare nella posizione corretta.
    Ora, entrambe le possibilità sono piuttosto semplici, specie con gli strumenti adatti. ti consiglio di scegliere una qualche libreria che ti agevoli il compito; ma anche con XMLHttpRequest è ovviamente possibile.
    Sappimi dire e buon lavoro
    Davide

  7. #7
    La seconda soluzione non fa un grinza però in questo modo dovrei scrivere uno script php nella pagina principale (per ricevere le variabili lato client): non vorrei lasciare del codice php nella pagina principale né dover cambiare l'estensione da html a php.
    La prima soluzione non sono in grado di implementarla.
    Speravo ci fosse una soluzione pulita per fare una cosa del genere, vedo migliaia di siti (per esempio quelli di annunci) che prelevano i dati dal database e li visualizzano dinamicamente, mi chiedo come facciano.

  8. #8
    basta che tu punti ad un'altra paginetta php che ti faccia il lavoro e restituisca il frammento di codice. Per me come soluzione è linda, molto meglio, oltretutto, che json.
    Davide

  9. #9
    Ci ho perso tutta la giornata ed alla fine ho risolto ma con un'altra soluzione:
    oltre a caricare i dati nel database li carico anche in un file xml, in questo modo mi basta prelevare i dati dal file xml e fare l'impaginazione con MOD. Ho avuto non pochi problemi però per far gestire gli xml a firefox.
    Come ti sembra questa soluzione?

  10. #10
    una volta mi dissero: se funziona, è buona.
    Poi si possono fare i ricami e cercare il meglio. Non mi convince il dover mettere i dati in XML, se li hai già in db. Raddoppi il lavoro, il tempo, la manutenzione, i possibili errori. Perchè non usare solo XML allora?
    Non capisco poi dove trovi la difficoltà, il problema, se l'ho copreso correttamente, non è complicato, si tratta di una chiamata asincrona che recupera un frammento di HTML. Sto cercando di pensare ai miei esordi ajax e a dirla tutta non mi viene in mente un buon tutorial online .. ho un paio di titoli di libri in testa. Prova a cercare se Jeremy Keith ha pubblica qualcosa online. Ho letto un suo libro splendido su Ajax e spiega molto bene.
    In ogni caso, a parte la bibliografia, se hai bisogno prova a postare anche del codice che aiuta meglio a comprendere la dinamica.
    Buon lavoro
    Davide

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 © 2025 vBulletin Solutions, Inc. All rights reserved.