[DB]Taaldatbase voor site, hoe opzetten?

Pagina: 1
Acties:

  • Linc
  • Registratie: December 2000
  • Laatst online: 19-02 12:07
Ik wil een database maken voor een site zodat je voor alle tekst makkelijk een nieuwe taal kan toevoegen zonder de site helemaal opnieuw te maken. Mijn vraag is nu hoe kan ik dat het beste doen en heeft iemand hier misschien ervaring in?

Mij lijkt het slimst om gewoon 1 grote tabel te maken met language_id als primary key en dan voor elke tekst een kolom. Het nadeel hiervan is dat je wel heeeeeel veeeeeeeel kolommen krijgt (wat is het max aantal kolommen per tabel eigenlijk?).

Misschien is het een id om per pagina een tabel te maken?

als iemand slimme id'n over heeft hoor ik het graag :).

http://www.slobmotorsport.nl - iRacing Profiel


  • Yoeri
  • Registratie: Maart 2003
  • Niet online

Yoeri

O+ Joyce O+

(overleden)
xml gebruiken lijkt me hier ideaal?

Kijkje in de redactiekeuken van Tweakers.net
22 dec: Onze reputatie hooghouden
20 dec: Acht fouten


  • whoami
  • Registratie: December 2000
  • Laatst online: 00:40
Robbedoeske schreef op 04 februari 2004 @ 15:12:
xml gebruiken lijkt me hier ideaal?
Waarom?
Ik zie hier niet direct het nut / de toepassing van xml in.

Kijk hier eens:
[rml][ Alg] Generiek multi-language systeem[/rml]

[ Voor 16% gewijzigd door whoami op 04-02-2004 15:17 ]

https://fgheysels.github.io/


Verwijderd

Dit is niet zo slim aangezien je nu bij het oproepen van elke pagina alle pagina's van die taal ophaald. Ik weet ook niet of standaard voor elke pagina een pagina in een andere taal wordt gemaakt. Denk eerder aan zoiets:

Tabel Language, alle talen
Tabel Page, alle pagina's, eigenschappen zonder taal specifieke onderdelen
Tabel PageLanguage, alle pagina's, eigenschappen met taal specifieke eigenschappen

Kan je kijken welke talen er bestaan van een pagina en hoeft een pagina niet perse vertaald te zijn.

  • whoami
  • Registratie: December 2000
  • Laatst online: 00:40
Hoe zit het eigenlijk met die 'tekst'. Is dat 'vaste' tekst, of is dat vaste content?

En met wat maak je die site? (PHP, ASP.NET, ....)

https://fgheysels.github.io/


  • Dutchmega
  • Registratie: September 2001
  • Niet online
Heeft dit niet een grote performance impact?

  • Skaah
  • Registratie: Juni 2001
  • Niet online
een tabel met strings, en dan voor elke taal een kolom? Krijg je wel overal obscure string_id's :S

Verwijderd

Indien de content redelijk vast is:
<taal>.php bevat een array , waarbij de key een constante 'id' is van de tekst
array(SECTIEVANSITE_STRINGTJE => "Dit moet eruit komen");

  • Linc
  • Registratie: December 2000
  • Laatst online: 19-02 12:07
whoami schreef op 04 februari 2004 @ 15:20:
Hoe zit het eigenlijk met die 'tekst'. Is dat 'vaste' tekst, of is dat vaste content?

En met wat maak je die site? (PHP, ASP.NET, ....)
Nou het wordt een spelletje dus alleen de interface dat zullen niet echt lange strings zijn maar de help zullen wel langere strings worden

en ik bouw het in coldfusion mx/dreamweaver mx

edit:
vaste tekst dus

[ Voor 6% gewijzigd door Linc op 04-02-2004 15:30 ]

http://www.slobmotorsport.nl - iRacing Profiel


  • Bosmonster
  • Registratie: Juni 2001
  • Laatst online: 10-05 18:53

Bosmonster

*zucht*

tabelletje met ID, NAAM, VERTALING, TAAL

Kun je zoveel inzetten als je wilt.. Handiger trouwens ipv een enorme hoeveelheid data ophalen voor iedere pagina is een include'je maken per pagina met defines van interface-onderdelen. En de daadwerkelijke content uit de database alleen te halen.

Scheelt je een berg database-verkeer, maakt je site sneller en je kunt ook eenvoudig vertaling-modules toevoegen. osCommerce werkt ook op zo'n soort manier (open source webshop).

[ Voor 8% gewijzigd door Bosmonster op 04-02-2004 15:54 ]


  • Noork
  • Registratie: Juni 2001
  • Niet online
Wanneer je een aantal vaste talen hebt is het makkelijk het gewoon in je tabellen structuur op te nemen.

iets zoals ID, NL_TAAL, DE_TAAL

Wanneer je constant talen aan het verwijderen en toevoegen bent is het misschien beter om 2 tabellen te maken.

TAAL_ID, TAAL

ID, TEKST, TAAL_ID

  • LuCarD
  • Registratie: Januari 2000
  • Niet online

LuCarD

Certified BUFH

Ik weet niet welke serverside taal je gebruikt. Maar bij PHP zit een mooie module die eigenlijk exact doet wat jij wilt!

http://nl.php.net/gettext

disclaimer: ASP zal vast ook wel zoiets hebben maar die ken IK niet.... :Y)

Programmer - an organism that turns coffee into software.


Verwijderd

offtopic:
Nu je me toch een stuk over mierenneuken hebt laten lezen.

[quote]whoami schreef op 04 februari 2004 @ 15:20:
En met wat maak je die site? (PHP, ASP.NET, ....)[/quote]

[rml][ Alg] Generiek multi-language systeem[/rml]
[quote]whoami schreef op 20 september 2002 @ 08:46:
Waarin het systeem ontwikkeld wordt, doet er niet zozeer toe.[/quote]

(8>

  • Tomatoman
  • Registratie: November 2000
  • Laatst online: 07:34

Tomatoman

Fulltime prutser

Verwijderd schreef op 04 februari 2004 @ 19:16:
offtopic:
Nu je me toch een stuk over mierenneuken hebt laten lezen.

[quote]whoami schreef op 04 februari 2004 @ 15:20:
En met wat maak je die site? (PHP, ASP.NET, ....)[/quote]

[rml][ Alg] Generiek multi-language systeem[/rml]
[quote]whoami schreef op 20 september 2002 @ 08:46:
Waarin het systeem ontwikkeld wordt, doet er niet zozeer toe.[/quote]

(8>
offtopic:
Au, die doet zeer! 1-0 voor zzzflitzzz

Een goede grap mag vrienden kosten.


  • Tomatoman
  • Registratie: November 2000
  • Laatst online: 07:34

Tomatoman

Fulltime prutser

Mijn eerste ingeving is om voor iedere taal een aparte tabel te maken, waarbij alle taalversies van een bepaalde tabel dezelfde indeling hebben. In de query's vul je dan dynamisch - afhankelijk van de gekozen taal - de naam van de juiste tabel in. Helaas kost je dit wel een stuk performance, want de query's kunnen niet geoptimaliseerd en preprocessed worden door de database server.

Een goede grap mag vrienden kosten.

Pagina: 1