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

    Funzione dinamica che stampi i record delle tabelle

    Ciao ragazzi ho bisogno di un consiglio...
    Devo creare una funzione che mi permetta di stampare il contenuto di diverse tabelle.

    Le tabelle in questione sono state create per la gestione degli articoli di un blog (quindi con pochi campi), mentre l'altra tabella è stata creata per la gestione dei viaggi quindi ho una 10 di record...

    Come faccio a fare un'unica funzione che mi permetta la stampa di queste tabelle?
    Il problema principale di questa funzione è la visualizzazione diversa dei record che compongono la tabella...

    Qualche soluzione? o l'unico modo è fare per ogni tabella una sua funzione?

  2. #2
    pochi campi vs tanti campi significa anche diversa impostazione grafica, titoli ecc...

    Potresti fare una funzione che recupera il result set da utilizzare in due contesti utilizzatori differenti.

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  3. #3
    Originariamente inviato da piero.mac
    pochi campi vs tanti campi significa anche diversa impostazione grafica, titoli ecc...

    Potresti fare una funzione che recupera il result set da utilizzare in due contesti utilizzatori differenti.
    Recuperare il result set intendi recuperare il risultato della query?
    e cosa intendi con "in due contesti utilizzatori differenti" ?

  4. #4
    Originariamente inviato da simone.marchese
    Recuperare il result set intendi recuperare il risultato della query?
    e cosa intendi con "in due contesti utilizzatori differenti" ?
    gestione degli articoli di un blog e gestione dei viaggi credo possano tranquillamente definirsi contesti che utilizzano due result set completamente diversi nella forma e nella sostanza.

    Forse pure, come sarebbe logico pagine differenti di script.

    Recuperare il result set ha un significato letterale. Gestisci i dati di una query, la esegui, recuperi i dati raccolti e li passi allo script che ha invocato la funzione.

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  5. #5
    Infatti è quello che sto facendo ti spiego meglio con un esempio...

    function articoli(){

    dentro questa funzione prendo i dati della tabella articoli e li mando in output con una tabella e intanto imposto anche la visualizzazione per spostarsi da un record all'altro con frecce o numeri
    }

    La stessa funzione la ripeto con la tabella viaggi solo che cambia il contenuto e la tabella di visualizzazione..

    Ora posso evitare di fare due funzioni separate e farne una unica?
    La vedo dura ma credo che in qualche modo si possa fare... i programmatori di grandi siti non credo che ogni volta si mettono a fare una funzione a doc per ogni tabella...

  6. #6
    Se fai le cose in modo procedurale e quasi ovvio creare una funzione per ogni tipo di utilizzo. Se vuoi fare una sola funzione dovrai provvedere ad infilare il result set in un array che darai quindi al return. Puoi gestire anche le eccezioni, i risultati con 0 result set e quant'altro ti pare. La sostanza e' quella di infilare tutto in un array che verra' poi gestito dallo script.

    Ovviamente nella composizione della query dovrai utilizzare delle variabili a cui assegnare di volta in volta il nome della tabella da usare, il where, l'ordinamento/raggruppamento e/o quant'altro possa servire.

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  7. #7
    Infatti avevo pensato giusto agli array solo che anche qui come dovrebbe essere impostato?
    Posso fare cosi ma manca qualcosa sicuramente, anche perchè nella tabella viaggi ho delle textarea con un minimo di icone word e puntatori magari il codice html dentro l'array mi fà casino...

    id=> id, nomeCampo => valore , valoreCampo => valore

    Per la query non è un problema passo tutto alla funzione diventando
    function articoli($nometabella,valore1,valore2) e dentro la query metto FROM $nometabella

  8. #8
    qualcosa mi sfugge.... anyway, se utilizzi mysql_fetch_assoc ti rende un array per ogni tupla estratta. Ora e' sufficente caricare tutto il result set in un array numerico per avere il multidimensionale che ti porta tutto a casa. Ovviamente il contenuto della tabella esula da questa indicazione.

    per esempio:

    Codice PHP:

    while($row mysql_fetch_assoc($resource)) {

    $ciccio[] = $row;

    }

    return 
    $ciccio
    con un print_r($ciccio) vedi come e' composto cosa ricevi ed agisci di conseguenza.

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  9. #9
    Si questo lo so! forse mi sono spiegato male...
    io tramite le istruzione che hai usato creo la grafica per far vedere all'utente il contenuto
    Ora questo contenuto volevo renderlo dinamico e non creare per ogni tabella una sua funzione di visualizzazione anche se le tabelle hanno record diversi... ma credo che a questo punto sia impossibile quello che chiedo e mi tocca realizzare n funzioni per la visualizzazioni di n tabelle invece che una sola funzione per n tabelle...

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.