cookies taal update

Status
Niet open voor verdere reacties.

zildjan

Gebruiker
Lid geworden
19 mrt 2010
Berichten
41
Hallo

Ik ben bezig met een taalkeuze via cookies.

De cookies definiëren en wijzigen lukt, maar om de een of andere reden lukt het niet deze gewijzigde cookie te gebruiken.

Here goes:

Cookie plaatsen
Code:
$default="nl";
$taal=$_GET['taal'];
if (!isset($_COOKIE['lang']) )
	{
	setcookie('lang',$default,time()+604800);
	header("Location: " . $_SERVER['PHP_SELF']);
	exit;
	}
else if(strlen($taal)>0){
	if ($_COOKIE['lang'] != $taal)
	{
	setcookie('lang',$taal,time()+604800);
	header("Location: " . $_SERVER['PHP_SELF']);
	exit;
	}
}

require wijzigen
Code:
$keuze = $_COOKIE['lang'];
  if ($keuze="nl")
  {
	  echo "Nederlands | <a href=\"?taal=fr\">Fran&ccedil;ais</a>";
	  require("lang/nl.php");
  }
  else if ($keuze="fr")
  {
	  echo "<a href=\"?taal=nl\">Nederlands</a> | Fran&ccedil;ais";
	  require("lang/fr.php");
  }

De eerste code staat bovenaan de pagina (include).
De tweede code staat in de pagina (include).

Als ik de cookie weergeef via
Code:
<?php
echo $_COOKIE['lang'];
?>
in de pagina, wijzigt deze van nl naar fr, dus dit wil zeggen dat de cookie effectief een nieuwe waarde krijgt.

Maar, de rest wijzigt niet, met andere woorden, de taallinks wijzigen neit, de nl.php of fr.php wordt niet geladen of gelezen of ...

Als iemand enig licht op dit probleem kan werpen, graag :)

Alvast bedankt voor jullie tijd!

greetz
P
 
Laatst bewerkt:
Vergelijkingen doe je met 2 = tekens:

PHP:
if ( $a == $b )

Met 1 = teken is het een toewijzing:

PHP:
if ( $a = $b ) {
  // de waarde van $a is nu gelijk aan de waarde van $b
}
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan