Paras tapa tehdä monivalintakysely käyttäen tietokantaa.

Viestiketju alueella 'Ohjelmointi, pelikehitys ja muu sovelluskehitys' , aloittaja Jean_Sipulius, 11.02.2019.

  1. Jean_Sipulius

    Jean_Sipulius

    Viestejä:
    273
    Rekisteröitynyt:
    17.10.2016
    Olen miettinyt pääni puhki ja en oikein hoksaa mikä olisi paras tapa edetä. Tilanne on tämä:

    -Käyttäjä voi klikata objektia X.
    -Aukeaa valikko, josta käyttäjä voi valita kolme aihepiiriä, josta äänestää. Aihepiirit ovat aina kiinteitä ja samoja.
    -Aihepiiriä klikatessa aukeaa uusi valikko, jossa on useita eri vaihtoehtoja liittyen klikattuun aihepiiriin. Nämä vaihtoehdot voivat vaihtua ja lukumäärää ei ole vakio.
    -Käyttäjä voi valita mieluisen vaihtoehdon ja klikata äänestä nappia jolloin tieto lähtisi tietokantaan.

    Nyt minun pitäisi saada otettua talteen äänestetty data ja tehdä yhteenveto. Ongelmia minulle tulee siinä kun äänestettävien lukumäärä vaihtelee ja en oikein tiedä miten tietokanta pitäisi luoda. Onko se validi ratkaisu, että kun äänestys tehdään, kyseiselle äänestykselle luodaan oma taulu, joilloin voidaan specifioida columnien lukumäärä? Tällöin tauluja tulisi todella paljon ajan mittaan. Jos tuolla tavalla tekee niin mikä olisi sitten paras keino saada nuo datat irti, jotta voi näyttää ne esim. pylväsdiagrammina?

    Data olisi periaatteessa tälläistä. Aihe X:n äänestys. Valinta 1: 2 ääntä, Valinta 2: 5 ääntä, Valinta 3: 4 ääntä jne.

    Huomioitavaa:
    Äänestäjät on yksilöity.
    Objekti X on yksilöity ja objektin äänestyksellä on uniikki nimi myös(ehkä tätä voisi hyödyntää?)
     
  2. Zigh

    Zigh

    Viestejä:
    786
    Rekisteröitynyt:
    17.10.2016
    Eikö tuohon riitä kaksi (kolme) taulua?
    - Aiheet
    - Valinnat
    (- Äänet)

    e: äänet unohtui
     
    Viimeksi muokattu: 11.02.2019
  3. Tuxi

    Tuxi

    Viestejä:
    156
    Rekisteröitynyt:
    19.10.2016
    Ei missään nimessä dynaamisia tauluja. Aihealue (1) - Kysymys (*), Kysymys (1) - Valinta (*), jossa siis molemmat ovat yksi moneen suhteella. MySQL WorkBench tai muu vastaava schema editori auki ja alat sinne hahmottelemaan.
     
  4. ©©©

    ©©©

    Viestejä:
    204
    Rekisteröitynyt:
    16.10.2016
    Jotenkin näin tekisin:
    Koodi:
    users
    id, name
    
    topics
    id, name
    
    selections
    id, name, topic_id(fk)
    
    votes
    id, user_id(fk), selection_id(fk)
    
     
  5. Jean_Sipulius

    Jean_Sipulius

    Viestejä:
    273
    Rekisteröitynyt:
    17.10.2016
    Kiitos avusta. Täytyy alkaa keskiviikkona hahmotella asiaa. Luultavasti palaan triidiin loppuviikosta jos ei onnistu :).