Gegevens van subdomein
Op mijn hoofdpagina wil ik graag een link maken naar een aantal verschillende "Secties" op mijn site. Elk lid kan zich aanmelden op één of meerdere secties. De secties bevinden zich elk op een apart subdomein, bijvoorbeeld sectie1.mijnwebsite.nl. Op de homepage wil ik graag laten zien hoeveel gebruikers zich bij een sectie hebben aangemeld.
Nu vraag ik mij af hoe ik dit kan laten zien. Omdat ik elk subdomein een eigen database heb gegeven en ik op de homepage al connectie maak met de "home"-database lijkt het me niet handig om telkens een nieuwe verbinding te maken etc, dus ik denk dat het het beste is dat ik vanaf het subdomein het aantal spelers naar een tekstbestandje schrijf (bijvoorbeeld sectie1.mijnwebsite.nl/sumusers.php), en dat ik de uitkomst daarvan inlees via een script op de homepage. Mijn vraag is alleen: Hoe luidt dit script? (Of indien mijn idee niet het beste is, wat is dan een beter alternatief)
Bedankt alvast
alles in 1 db
Dus dan heb je daar een tabel met:
sectie_naam, waarde
Bv. Ik maak een nieuwe user test, die is voor sectie 1.
Ik voeg toe in de hoofddatabase: sectie_naam: 1, waarde +1 doen. Dan kan je mooi het totaal er uit halen lijkt me?
Bedankt, maar dan moet ik bij de registratie op de sectie ook connectie maken met de "home"-database. Is dat wel handig? Ik heb namelijk wel eens gehoord dat je maximaal één connectie per pagina moet hebben.
Goed datamodel maken en alles in 1 database opslaan. Heb je een goede reden om het in gescheiden databases te doen?
- home
- server1
- server 2 [etc]
- support
- forum
Dat is toch beter of heb ik het verkeerd?
Ik zie geen reden om het in meerdere databases doen hoor. Het is een keuze en je bent er vrij in.
Maar goed, indien ik dus meerdere databases gebruik. Wat is dan de beste manier om gegevens van subdomein1 aan het hoofddomein door te geven? Zoals ik al zei is het denk ik niet handig om twee connecties op één pagina te hebben?
Jordy nvt op 07/04/2011 11:28:29:
Zoals ik al zei is het denk ik niet handig om twee connecties op één pagina te hebben?
Ligt eraan hoe je je mysql_query aanroepen hebt geregeld. Maar je zou die tweede connectie met PDO of MySQLi kunnen maken, zodat die geen effect heeft op de standaard verbinding die mysql_* functies pakken.
Je zou vanaf de subdomeinen iets naar de centrale database kunnen pushen. Log-regeltjes of zo, iets met een datum. Niet tellertjes gaan ophogen, want als het dan een keer verkeerd gaat kan je dat niet terugdraaien, en je hebt te maken met race-condities.
Maar dit gaat je later een boel koppijn opleveren. Hoever ben je nu? Kan je nu nog gemakkelijker switchen naar één centrale database voor alle sites dan straks? Zo ja, doen! Zo nee, it will only get worse from here.
Stel dat ik een "Home"-pagina heb die uit 10 tabellen bestaat. Ik heb (laten we van een groot aantal uitgaan) 100 verschillende secties met elk 40 tabellen. Tot slot heb ik nog 40 tabellen in Support en 80 tabellen in Forum. De rekensom komt dan op 10+(100x40)+40+80=4130 tabellen.
Behalve dat dit erg groot is, lijkt het me ook erg onoverzichtelijk. Weten jullie zeker dat het handig is om alles naar 1 database te exporteren? In principe ben ik al redelijk ver, maar dit is nog wel een moment dat ik het kan veranderen als dat per se nodig is. Graag al jullie meningen.
Dat doe je door te normaliseren.