login  Naam:   Wachtwoord: 
Registreer je!
 Forum

meerdere controles of 2 aparte paginas ? (Opgelost)

Offline bertenz - 03/05/2007 20:22 (laatste wijziging 03/05/2007 20:23)
Avatar van bertenzHTML beginner Hallo allemaal,

Een website waar ik mee bezig ben is twee-talig, de meeste tekst staat in de database en die tekst wordt er telkens uitgehaald door de tabellen "tabel_ned" en "tabel_eng" te noemen. Dan heb ik een variabel $lang die dus de waarde "ned" of "eng" heeft. In het begin had ik dus niet vaak de controles nodig zoals
  1. <?php
  2. if($lang == "ned"){
  3. ...
  4. }else{
  5. ...
  6. }
  7. ?>

De laatste tijd, heb ik dat soort controles echter steeds vaker nodig. Is het dan misschien verstandiger om 2 geheel aparte pagina's (of delen van pagina's) te maken ? Als er namelijk herhaaldelijk dezelfde controle uitgevoerd moet worden, wordt de website daar dan trager van ?

Bertenz

9 antwoorden

Gesponsorde links
Offline delta_004 - 03/05/2007 20:25
Avatar van delta_004 Onbekend Ik neem aan dat je hoofdtaal Nederlands is. En ik zouw gewoon op de zelfde pagina laten, maar 2 paginas en zonder db is wel sneller

Ik had ook van die if een functie gemaakt
  1. <?php
  2. function is_ned() {
  3. global $lang;
  4. if($lang == "ned") { return true; }
  5. else { return false; }
  6. }
  7.  
  8. if(is_ned()){
  9. ...
  10. }else{
  11. ...
  12. }
  13. ?>
Offline bertenz - 03/05/2007 20:31
Avatar van bertenz HTML beginner Is inderdaad ook een mooie oplossing, maar in de database staan honderden records met informatie over hotels en pretparken en dat zowel in het engels áls in het nederlands, vandaar dat ik de database sowieso gebruik. Maar er komen nu steeds meer paginas waarbij ik statische teksten heb die Nederlands óf Engels moeten zijn (afhankelijk van de ingestelde taal). Maar het maakt volgens jullie niets (of niet veel) uit of ik 2 aparte pagina's maak en dus maar één keer controleer op de taal of dat ik meerdere controles op één pagina heb staan. Of zit ik er nu naast ?
Offline gothmog - 03/05/2007 20:46 (laatste wijziging 03/05/2007 20:56)
Avatar van gothmog Lid Ik had ook een keer zoiets.
Ik had een pagina nl.php en en.php, als de taal nederlands was include ik nl.php en andersom. In nl.php haal je dan alles uit de database wat Nederlands is. En zet je in een while() in die pagina.
Dan zet je op een gewone pagina bijv. echo _paginanaam_tekstnaam; en zet je op nl.php in de while loop:
define("_".$rec['pagina']."_".$rec['tekst'].", $rec['nl']);

Even uitwerken:
  1. <?php
  2. $select=mysql_query("SELECT * FROM tekst") or die(msyql_error());
  3. while($rec=mysql_fetch_assoc($select))
  4. {
  5. define("_".$rec['pagina'].'_".$rec['tekst'].", $rec['nl']);
  6. }
  7. ?>

Al is dit wel een omslachtige manier als je allemaal hotels uit de database moet halen.
Offline Dark_Paul - 03/05/2007 22:11 (laatste wijziging 03/05/2007 22:12)
Avatar van Dark_Paul PHP ver gevorderde Je kan ook de statische teksten in het nederlands en engels in een database stoppen.


@Delta004:
Die functie van jou is klinklare onzin.
  1. <?
  2. if ($lang=='ned') {
  3. ..
  4. }

is net zo lang als onderstaande en geeft ook TRUE of FALSE terug..
  1. <?
  2. if (is_ned()) {
  3. ..
  4. }
Offline delta_004 - 04/05/2007 08:03
Avatar van delta_004 Onbekend Ik weet niet wat jij onder onzin verstaat, Functies zijn veel duidelijker, en vooral je kan ze in 1x aanpassen over alle scripts!
Offline bertenz - 06/05/2007 12:40
Avatar van bertenz HTML beginner Ik zie het voordeel van de functie in principe ook wel, maar als er een extra taal bij komt, dan moet je een tweede functie maken (bijv. "is_german()" ) of niet ?

Overigens ging mijn vraag er meer over of het praktischer (ook gelet op de laadtijd) is om 2 aparte pagina's te maken (en dus maar één "taal-controle" uitvoeren) of dat het eigenlijk niet zoveel uitmaakt en dus gewoon meerdere controles op één pagina goed mogelijk zijn (ongeveer 30 controles ..)

Bertenz
Offline Ibrahim - 06/05/2007 16:13
Avatar van Ibrahim PHP expert dan maak je toch een algemene functie met de parameter $lang
  1. <?php
  2. if( is_lang( 'nl' ) )
  3. {
  4. //
  5. }
  6. elseif( is_lang( 'en' ) )
  7. {
  8. //
  9. }
  10. enz.
Offline ikkedikke - 06/05/2007 16:45
Avatar van ikkedikke PHP expert als alleen de tekst verschillend is, waarom zorg je dan niet gewoon dat je 1 keer alle tekst definieerd in de goede taal, en je daarna gewoon niet meer druk maakt om de taal?
Offline bertenz - 06/05/2007 22:03
Avatar van bertenz HTML beginner Dat is inderdaad een goed idee om de tekst apart te definiëren, dan hoef ik bij uitbreiding naar een 3e taal maar één gedeelte toe te voegen. Bedankt voor jullie reacties !

Bertenz
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.257s