• User

    Php-MySql, strutturare un db per query progressive fino alla scelta finale.

    Sono disperato.
    quando ho detto di si mi sembrava una fesseria, ora invece sono nel buio più pesto.. tra l'altro il tempo sta per scadere ed io una figuraccia non mi va di farla..
    8 colonie estive per minori, ognuna con le loro caratteristiche. Come fare a scegliere quella giusta? Piccola applicazione.. una schermata per ogni domanda

    • Ubicazione preferita? MARE - MONTAGNA - COLLINA
    • Attività preferite: Cartotecnica - Fotografia - Barca a vela
    • Sport preferiti? Tiro con l'arco - Basket - Calcetto
      etc etc etc

    Per fortuna le domande non sono tante.. credo 8 in tutto..

    Ogni pagina visualizzata avrà una sola domanda.. bisogna scegliere una tra le risposte e si va avanti, fino ad un risultato appropriato.
    da dove parto? dalla strutturazione del db..immagino.
    Come lo disegno? Stile forza bruta.. ovvero tabella villaggi e tutti i campi possibili e immaginabili etichettati con valori SI o NO a seconda se quell'attività è presente?
    Non so..davvero..scusate l'ignuranza.. ma ogni volta che penso ad una soluzione, ho sempre una casistica che la manda in crisi.
    Qualcuno di voi ha mai trattato cose "simili"?
    grazie per l'attenzione


  • User

    Allora,
    fermo restando che il problema secondo me è solo la progettazione del database, perchè richiamando le informazioni in diverse pagine ti puoi portare i filtri da pagina a pagina con valori hidden.

    Direi che forse potresti risolvere con un unica tabella, che abbia come campo oltre ai classici (ID,Nome,etc) anche i vari Campi di attività.

    Ti faccio un esempio Pratico
    | ID | Nome | Tipologia | Att A | Att B | Att C |
    | 1 | Campo A | Mare | 0 | 1 | 1 |
    | 2 | Campo B | Montagna | 1 | 0 | 0 |

    Di volta in volta esegui filtrando con i valori scelti nelle precedenti risposte.
    Se le attività diventassero numerose, puoi dividerle in sottotabelle e legarle alla struttura tramite l'id, e agirai su una query su più tabelle.

    Spero di esserti stato d'aiuto.


  • User

    ti ringrazio per la risposta..
    la soluzione che mi proponi e' in effetti quella che volevo realizzare io .. solo che non vorrei che fosse penalizzante (ma poi..in fondo..non e' che devo andare a ricercare tra milioni di dati..) .. poi ho lontani ricordi del processo di normalizzazione del database..e allora ho postato questo topic.
    In ogni caso hai ragione.. forse il db è il minore dei problemi.
    Ovviamente, dovro' creare anche una tabella delle domande, del tipo:

    id | domanda | risp1 | risp2 | risp3 | ..

    Fin qui... diciamo che ci sono.
    Poi viene il bello.. tu mi hai parlato di " portare i filtri da pagina a pagina con valori hidden" .. esatto ..proprio quello che avevo pensato di fare!
    Esiste qualche topic secondo voi che ha trattato un problema simile e che magari puo' aiutarmi? Parlo di php con mysql!
    Ultima cosa..
    secondo voi esperti del settore, potrei chiedere di farmela realizzare da qualcuno? Gironzolando sul forum ho visto che ci sono topic di offerta lavoro...e' consentito? Ho la sensazione che sia semplice da fare per chi conosce il linguaggio .. io piuttosto ho il timore di metterci un mese.. e tempo davvero non ne ho.
    Datemi consigli.......:ciauz:


  • User

    Per vedere se ci sono temi già trattati usa il tasto cerca, magari con i filtri avanzati trovi qualcosa che ti interessa.

    Per la realizzazione dello script si tratta di una cosa semplice, quindi puoi sia realizzarla tu, che (ovemai non ritieni di essere in grado) affidarti a qualche freelance.

    Il consiglio che sento di darti è quello di valutare una soluzione flessibile, che permetta in un futuro di aggiungere o rimuovere una struttura o una domanda senza incidere sul database.

    In bocca al lupo.