login  Naam:   Wachtwoord: 
Registreer je!
 Forum

verschillende talen werkt niet (Opgelost)

Offline syssin - 07/07/2010 19:50
Avatar van syssinNieuw lid Hallo, ik zit met het volgende probleem:
ik probeer een simpel scriptje te maken om 2 talen (nl/fr) op een eenvoudige site te krijgen.
Het lijkt me een simpel scriptje en ik wou het eens anders proberen dan met define(...
Het ziet er als volgt uit:
DB is ingesteld met 2 extra columns voor het frans. Dus we hebben o.a. titelned, titelfr, contentned en contentfr

Nu probeer ik gewoon de juiste content op te roepen door het volgende:

  1. if(isset($_GET['page'])){
  2. $page_id = mysql_real_escape_string($_GET['page']);
  3. } else {
  4. $page_id = 1;
  5. }
  6.  
  7. $SQL_page="SELECT * FROM pages WHERE id=" . $page_id;
  8. $page_result=mysql_query($SQL_page);
  9. $page=mysql_fetch_array($page_result);


Daarna geef ik het weer met het volgende:

  1. switch ($_GET['lang']) {
  2. case "nl":
  3. $contentt = $page['contentfr'];
  4. case "fr":
  5. $contentt = $page['contentned'];
  6. break;
  7. }
  8.  
  9. echo $contentt;


Helaas krijg ik steeds de verkeerde inhoud weergegeven op de een of andere manier... + ik krijg dezelfde content op zowel lang=nl als lang=fr

Waarschijnlijk is dit een stomme vraag, maar ik zou toch graag willen begrijpen waarom dit niet werkt... Gelieve me dus te sparen ;)

8 antwoorden

Gesponsorde links
Offline Stijn - 07/07/2010 19:56
Avatar van Stijn PHP expert Je moet een break; zetten bij de "nl" case. Nu gaat hij van case "nl" doorlopen naar case "fr".
Offline syssin - 07/07/2010 20:31
Avatar van syssin Nieuw lid Bedankt voor de snelle reactie.
Helaas helpt dit niet..
Offline Maarten - 07/07/2010 20:32
Avatar van Maarten Erelid En de content in de database verschilt wel degelijk (klinkt misschien dom maar ik ken dat forum hier al een beetje )?
Offline syssin - 07/07/2010 20:33
Avatar van syssin Nieuw lid Ik zit al enkele dagen met dit probleem, ik heb al meerdere keren de content veranderd, zelfs de columnheaders.. ;)
Toch bedankt voor de reactie!
Offline Stijn - 07/07/2010 20:40
Avatar van Stijn PHP expert
  1. switch ($_GET['lang']) {
  2. case "fr":
  3. $contentt = $page['contentfr']; break;
  4. case "nl":
  5. $contentt = $page['contentned'];
  6. break;
  7. }
  8.  
  9. echo $contentt;


Als dit niet werkt, dan is er iets mis met je variabelen.
Offline syssin - 07/07/2010 20:46
Avatar van syssin Nieuw lid Nope, hij blijft enkel de nederlandse versie weergeven, wat ik ook doe.. 
Offline ProjectWebdesign - 07/07/2010 20:57 (laatste wijziging 07/07/2010 20:58)
Avatar van ProjectWebdesign Lid Doe eens de $_GET['lang'] boven de switch echo-en.
Of echo ook in de switch. Dus in de case van NL doe je bijv: echo 'NL';
En bij FR doe je FR echo-en. Kijken welke je krijgt.
Kijk dan eens wat je krijgt.
Offline syssin - 07/07/2010 21:48
Avatar van syssin Nieuw lid Ik heb het uiteindelijk opgelost! Er stond nog ergens een include() tussen met een While()-structuur die ik dus niet gezien had. Ik weet niet waarom deze moeilijk deed, maar ik heb hem verwijderd en het werkt nu perfect!

Hartelijk dank aan iedereen!
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.204s