Als je na het instellen van een taal naar een ander pagina gaat, krijg je weer nederlands
Standaardtaal als er geen taal bestaat is nederlands, totdat je voor engels kiest => zie code onder:
Omdat je op de nieuwe pagina die $_GET waarde niet mee hebt, zal hij weer nederlands instellen. Je zult dus moeten controleren of er een nieuwe waarde in de $_GET geset is die verschilt van de huidige waarde in de cookie
Hoe zorg je ervoor dat die taal (is dus een cookie) altijd aanwezig is. Ik heb bovenstaand code geinclude in de index.
En ik wil niet heel de tijd met een url rondlopen als index.php?taal=engels&p=xx&id=ss&cat=ww...
Want dan wordt de taal wel telkens verstuurd toch?
lau - 02/05/2006 21:04 (laatste wijziging 02/05/2006 21:05)
HTML interesse
@Simon, dat wil ik juist niet hebben met zo'n taal=xx in de url. Dat wil ik liever vermijden.
Is het niet mogelijk om iets toe te voegen aan mijn bovenstaande code (post 1) dat ie dat automatisch ziet. Want bovenstaande code wordt toch geinclude...
Simon - 02/05/2006 21:07 (laatste wijziging 02/05/2006 21:07)
Volgens mij is dat dat wanneer je while of for gebruikt, en in die loop een include hebt, dat met include_once hij hem maar 1 keer include, met gewoon include blijft hij hem elke keer weer opnieuw includen
Hij doet het wel, maar eigenlijk zal de pagina nog moeten worden gerefreshed terug naar de plaats/pagina waar je toen zat - voordat je op een andere taal klikte.
Wie weet hiervoor een oplossing? Ik dacht iets met redirect en SERVER_URI ofzo (ik had hier in het verre verleden ook een vraag over gesteld, maar dat was na een inlogformulier).
Dit werkt wel, maar je keert telkens terug naar de index pagina door die ?.
Hoe kan ik ervoor zorgen dat als je ergens staat bv:
index.php?plaats=am&fiets=42&id=2 dat je hierachter &taal=engels of &taal=nederlands kan plaatsen?
Maar het moet niet zo zijn dat je op de index pagina dit krijgt index.php&taal=xxx want dan gaat het fout.
Dus bij index.php moet er wel een ? achter staan.
Hoe kan ik ervoor zorgen dat het zo wordt?
lau - 07/05/2006 16:58 (laatste wijziging 07/05/2006 17:00)
HTML interesse
@Simon, ik heb jouw code wat veranderd.
Ten eerste hoeft er niet meer naar de taal te zoeken. Want ik haal de taal op uit een taalpakket met LAN_TAAL (is tussentijds veranderd van $cfg['taal'], omdat ik define toch iets mooier vind staan). Daarom hoeft er ook geen default of else te zijn, omdat er ALTIJD een taalpakket aanwezig is, anders kan je de site niet eens zien.
Daarnaast staat de site in een subroot en niet in www.ex.nl/ maar in www.ex.nl/SITE2/.
Maar het werkt nog niet goed. Ik heb $tussen en $url ge-echood en laat toch iets anders zien.. of ik heb het niet goed.
En afhankelijk van de cookie krijg je of de nl.php of en.php taalpakket waarin deze LAN_TAAL wordt meegegeven.
Maar dit terzijde. Het probleem is ? en & gevallen.
lau - 07/05/2006 18:11 (laatste wijziging 07/05/2006 22:08)
HTML interesse
Het doet het wel, maar ik denk dat het toch naar LAN_TAAL moet ipv get[taal].
Als je switch van Nederlands naar Engels blijft de link English terwijl de pagina in het engels is. Het switchen van Engels naar Nederlands is wel goed.
Simon - 07/05/2006 20:26 (laatste wijziging 07/05/2006 20:27)
PHP expert
bij mij verandert die link wel?? welke browser gebruik je?
hij verandert niet altijd even goed, maar meestal wel toch...
lau - 07/05/2006 20:31 (laatste wijziging 07/05/2006 22:10)
HTML interesse
Ik gebruik Firefox. Maar het ligt toch niet aan de browser als script niet goed doet dat onafhankelijk van de browser moet werken
Daarnaast doet ie het goed van Engels naar Nederlands, maar omgekeerd niet.
Edit 2:
Ik ben echt zooo dom he
Het is een kleine aanpassing. Nu doet ie het goed. Ik heb nu een dubbele switch ingesteld, 1 voor als er taal wordt meegegeven en als er geen taal is meegegeven, dan pakt ie de LAN_TAAL. En als er wel een taal wordt meegegeven pakt ie $_GET['taal'] met str_replace