Jag håller på att bygga en företagshemsida och min arbetsgivare vill ha sidan på både Svenska och Engelska. Jag har nu funderat ett tag på hur detta ska gå till väga och jag har några lösningar som fungerar men som jag inte riktigt vet om de är bra/dåliga.
Jag tänkte att man kunde göra såhär.
Man lägger alla statistiska (inte dynamiska) texter i en fil och skapar variablar för varje sådan text. Om vi säger att det står "Hej och välkommen" på huvudsidan så läggs denna text i en variabel i den här filen, och så inkluderar man den på sidan och skriver ut variablen.
Sen låter man besökaren inkludera olika filer mha. sessions.
För det andra kan man göra som ovanstående bara det att man lagrar det i en databas istället som ser ut ungefär såhär:
[b]tbl_Languages[/b]
ID
Language
[b]tbl_Descript[/b]
ID
LangID
Description
Är några av dessa lösningar som håller eller finns det något smidigare sätt?
Rent generellt så skulle jag vilja säga att du ska undvika filer och i stället placera allt i databasen. För hur ska du göra när du vill lägga till en fras? Då måste du eller din arbetsgivare kunna programmera. Om du i stället gör ett webbgränssnitt så kan "vem som helst" lägga till fraser via ett enkelt formulär. Och det kan man göra utan att ha tillgång till FTP.
Ja, fördelaktligen bör den vara någon utav text-typerna eftersom du inte kan förutsee längden på varje fras - enstaka ord till hela meningar som ska översättas.
Lägg gärna varje fras (description som du nämner) i en kategori så att du enklare kan hålla reda på dem. Exempelvis "Allmänna fraser och ord" (ja, nej, kanske, hej, hallå, hej då osv) och mer inriktade kategorier såsom "Fraser om oss" (vi är ett föreag..., vi kan göra..., du kan kontakta oss på... osv).
Jag har gjort så i tidigare lösningar att jag har haft en tabell med sidorna, en tabell med sid-delarna (page-parts), och en tabell innehållande tillhörande texter till varje del på flera språk. Sedan på sidan har jag hämtat alla tillhörande texter(som var och en har en passande rubrik), på det efterfrågade språket. Sedan är det ju lätt att få ut varje text.
Hur ska jag då hämta ut all information? Ska jag skriva i SQL-frågan WHERE id = 7 t.ex.? Är inte detta väldigt krånligt och kräver en oändlig uppsjö med SQL-frågor?
Jo, desto störra flexibilitet och fler funktioner, desto fler gånger måste du i regel hämta data från datakällan.
Lös det med att cacha sidorna eller språket. Det går också att "parsa" sidorna och lägga all html i en egen datatabell eller kanske som fil på servern. Då hämtar du den "färdiga" html-koden och slipper gå fler rundturer kring datakällan.
270 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e