Op deze website gebruiken we cookies om content en advertenties te personaliseren, om functies voor social media te bieden en om ons websiteverkeer te analyseren. Ook delen we informatie over uw gebruik van onze site met onze partners voor social media, adverteren en analyse. Deze partners kunnen deze gegevens combineren met andere informatie die u aan ze heeft verstrekt of die ze hebben verzameld op basis van uw gebruik van hun services. Meer informatie.

Akkoord

Vraag & Antwoord

Webprogrammeren & scripting

[Mysql] Database indelen

Anoniem
BasHamar
7 antwoorden
  • Hallo,

    Afgelopen week werd ik door een lokale voetbalclub gevraagd of ik een systeem (php/mysql) kon maken waarin een paar mensen gegevens van spelers in kunnen opslaan.

    Wat voor gegevens bedoel ik nou?
    De club wilt 2x per jaar spelers gaan beoordelen op: techniek, kracht enz…
    Het gaat om de jeugdafdeling, dus er zullen per speler (in zijn carriere) zo'n 36 beoordelingen komen.

    Mijn vraag is nu, hoe kan ik mijn database het best indelen?

    Er moet in ieder geval een tabel komen voor het inlogsysteem. Maar ik weet niet hoe ik spelers icm beoordelingen moet gaan opslaan?

    Heeft iemand hier misschien een idee voor? Graag met een beetje uitleg want ik ben nog geen expert op het gebied van mysql.

    Alvast bedankt!
  • Als je nog niets met mysql gedaan hebt lijkt het me handig je daar eerst wat in te verdiepen. Er staan talloze handleidingen op het internet. Zelf heb ik ook graag een boek erbij naast mijn toetsenbord om snel dingen op te kunnen zoeken.

    Een forum is bedoeld om je vooruit te helpen bij problemen en niet om voor te kauwen.

    Ik zou zeggen ga aan de slag en kom je dan praktische problemen tegen laat ze hier zeker weten. Vemeld wat je al gedaan hebt of in welke richting je zelf denkt en je zult zien dat mensen je graag helpen.
  • Ik zou 2 tabellen aanmaken: 1 met de gegevens van de spelers en 1 met de beoordelingen. Die koppel je aan elkaar met een ID. Dus in de tabel "spelers" geef je elke speler een unieke ID. In de tabel "beoordelingen" geef je elke beoordeling een unieke ID en geef je ook aan bij welke speler ID de beoordeling hoort. Dus zoiets:
    [code:1:6dc8d3c8d3]ID (primaire sleutel) | speler ID | kracht | datum | etc[/code:1:6dc8d3c8d3]
    Bij het invullen van de beoordeling moet men toch de speler aangeven lijkt me, dus dan zoek je bij het aanvullen van de tabel de ID van de speler op en sla je die er ook in op.
    Bij het opvragen van de beoordelingen van een speler voer je dan simpelweg een query uit waarbij je alle rijen met de ID van de betreffende speler opvraagt.
  • Met de informatie die je geeft is (nog) geen database-ontwerp te maken, maar ik denk dat je het snelste tot een goed resultaat komt als je je inleest in Database Normalization. De normalisatie die je wil hebben is "3rd normal form" (3NF) of "Boyce-Codd Normal Form" (BCNF). Het zal je even kosten om je in te lezen in de stof en het te begrijpen, maar het is wel essentiële kennis bij het ontwerpen van databases.

    - Bas
  • Ik zou allereerst eens kijken op sites als hotscripts.com, of daar al niet iets bruikbaars te vinden is. Het heeft weinig nut het wiel opnieuw uit te vinden.

    Zelf een script ontwikkelen is behoorlijk wat werk, helemaal als je het nog nooit gedaan hebt. Vergis je ook niet in de beveiliging.
  • Bedankt voor al jullie antwoorden!

    Het is nou niet zo dat ik helemaal geen kennis heb van mysql, maar ik heb geen ervaring met grotere databases.

    Ik zat ook al aan de optie te denken die ger geeft. Dit gebruik ik ook in een ander script.

    Over de beveiliging maak ik mij niet zoveel zorgen. Alle wachtwoorden krijgen een sha256 encryptie en ik ga ook prepared statements gebruiken (mysqli). En natuurlijk nog allemaal andere dingen.

    Ik denk dat ik er nu wel uitkom, bedankt!
  • En injection, heb je daar ook aan gedacht?

Beantwoord deze vraag

Dit is een gearchiveerde pagina. Antwoorden is niet meer mogelijk.