20. november 2006 - 13:07Der er
9 kommentarer og 1 løsning
husk brugervalg - cookie eller database?
Hej allesammen.
På en side jeg er ved at lave, jeg jeg udviklet et sprogsystem, hvor alle mine phrases kommer direkte fra en MySQL database. Mit problem opstår nu, da jeg gerne vil have siden til at huske, hvilket sprog brugeren har valgt (dvs. enhver bruger på siden, ikke kun "tilmeldte/registrerede" brugere). Jeg står derfor foran valget mellem at bruge cookies eller bruge database. Nogen der har erfaringer med databasen? Jeg kan forestille mig at den hurtigt kan blive overbelastet, når der hele tiden indsættes data deri, og dermed gøre resten af siden langsom. Sker dette, eller kan jeg roligt bruge en database?
Umiddelbart vil jeg sige at du skulle bruge cookies, da du ønsker at ikke-registrerede brugere også skal huskes. Vil mene det er overkill at gemme sådanne data i en db.
Btw. Trækker du alle dine phrases i databasen hver gang en bruger besøger siden? For det er tungt! Så skulle du hellere lavet et script der sørger for at gemme dine phrases i en include fil. Altså få noget caching ind omkring det.
Hej phliplip (jeg troede faktisk der stod phillip :))
Tak for dit svar - Jeg tror nok jeg holder mig til cookies så!
mht. mine phrases, så kalder jeg dem med mysql_query() og mysql_fetch_array(), som jeg normalt ville gøre. Tænker du på at store alle mine phrases i en .txt fil og derefter explode() eller hvordan?
Tak for dit svar, jeg venter lige lidt med at acceptere hvis det er ok :)
Så skal du bare gemme $save til en fil du kan kalde dk.php i en languages/ mappe, evt. kan du kopiere den eksisterende til backup. fx ved at rename den til dk_datoOgTid.php
Så skal du kun køre export_lang.php når du har foretaget ændringer i dine phrases. Og du include()'er bare languages/dk.php når du ønsker dansk på siden!
Jeg tror han mener, at hvis al teksten fra siden skal hentes i databasen hele tiden, vil det kunne overbelaste serveren hurtigt, så det er bedre hvis du gemmer dem i php filer i en language mappe.
Fx
..\lang\danish.lng.php
og så underholder den variabler med teksten
$lng_welcomemsg = "Hej og velkommen til min side";
Jeps, det var også sådan jeg forstod det - Jeg eksporterer alle mine phrases via et script, således at de ligger i en php fil, i stedet for at skulle hente dem alle hver gang siden køres.
Jeg tilføjer lige dette, hvis der var nogen der i fremtiden har samme spørgsmål, og hvis de evt. ikke ved hvad de skal gøre efter phliplip's kodeeksempel. Håber at det er ok :)
Tillæg til phliplip's scripteksempel:
$writetofile = "languages/uk.php"; $writefile = fopen($writetofile, "w"); fwrite ($writefile, $save); fclose ($writefile); echo "Der blev succesfuldt skrevet til filen ".$writetofile;
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.