Hallo,

Ik ben nieuw in het programmeren in php. Is er iemand zo vriendelijk mij uit te leggen in klare taal hoe een gebruiker zijn voorkeurstaal van de website kan kiezen (bijv door vlaggentjes).

Dank is groot
vr gr Henk
Je zult de inhoud van je website gewoon in twee talen moeten opslaan. Met het commando 'include' kun je de goede taal in je pagina's zetten.
Stel dat je hyperlink voor Engels er zo uitziet:
<?php
<a href="?taal=eng"><img src="vlag_eng.gif></a>
?>
dan kun je daarna dit doen:
<?php
$talen = array ('ned', 'eng');
if (isset ($_GET['taal']) && in_array ($_GET['taal'], $talen)) {
include $_GET['taal'];
}
?>
Kleine aanpassing/uitbreiding

<?php
$talen = array ('ned' => './lang/dutch.php', 'eng' => './lang/uk.php');
if (isset ($_GET['taal']) && in_array ($_GET['taal'], $talen)) {
include $talen[$_GET['taal']];
}
?>

Zo is het al iets duidelijker misschien, in die files staan dan ook weer [php]array[/php]s, met in elk bestand dezelfde namen, alleen andere waarden erin, namelijk verschillende vertalingen.
of je kan ook gewoon een map EN en NL aan maken op je host en dan je nederlandse bestanden in NL en de engelse bestanden EN en als de gene registreert moet hij zijn taal aan geven en dat word opgeslagen in de DB en aan de hand daarvan kies je de juiste volder

<?
$query = mysql_query("SELECT * FROM users WHERE id='".$_SESSION['user_id']."'")
$ass = mysql_fetch_assoc($query);

if($ass['taal'] == NL) {
      $link = "<a href='NL/users/index.php'>Login</a>";
}else{
     $link = "<a href='EN/users/index.php'>Login</a>";
}

mieschien dat je hier wat mee kunt
@ Devon: dat is niet echt handig, want dan heb je je hele website dubbel. Als je het met includes doet heb je nog steeds 1 bestand voor de lay-out en hoef je die maar één keer aan te passen als het nodig is.
Jan Koehoorn schreef op 12.08.2006 08:42
Je zult de inhoud van je website gewoon in twee talen moeten opslaan. Met het commando 'include' kun je de goede taal in je pagina's zetten.
Stel dat je hyperlink voor Engels er zo uitziet:
<?php
<a href="?taal=eng"><img src="vlag_eng.gif></a>
?>
dan kun je daarna dit doen:
<?php
$talen = array ('ned', 'eng');
if (isset ($_GET['taal']) && in_array ($_GET['taal'], $talen)) {
include $_GET['taal'];
}
?>


Bedankt voor de uitleg, ga er direct mee aan de gang.

Vr gr Henk
Zie de sctiplib, daar heb ik ook nog een talenscript in gepost
ik heb het een en ander geprobeerd, maar ik denk dat ik het niet vat, ik weet het wel zeker.
Ik heb een mapje /lang aangemaakt. Hierin heb ik een file lang_dutch.php en een file lang_eng.php gezet. De benaming heb ik ook aangepast in de code:
<?php
echo '<a href="?taal=eng"><img src="GB.gif"></a>';
echo '<a href="?taal=nl">img src="NL.gif"></a>';
?>

<?php
$talen = array ('ned' => 'lang/lang_dutch.php', 'eng' => 'lang/lang_eng.php');
if (isset ($_GET['taal']) && in_array ($_GET['taal'], $talen)) {
include $talen[$_GET['taal']];
}
?>
Als ik op de link klik gebeurt er echter niets. Ik zie wel dat er in de browser de taal keuze duidelijk wordt, maar er moet dan toch ook een verwijzing volgen naar een filetje in nl of eng?
wat doe ik verkeerd?

ik hoor het graag
vr gr
Henk
heb je het ergens online staan?
Hoi,

Ik heb een testsite aangemaakt :
www.steenis.biz/test_site.
Neem daar de link taal_keuze.php. Je ziet dan twee vlaggen.
Ik lees graag je reactie.

vr gr Henk
Als ik op een vlag klik gebeurt er weinig...

Reageren