Double condition problématique

cs_pyranhaz Messages postés 236 Date d'inscription mardi 13 mai 2003 Statut Membre Dernière intervention 13 décembre 2004 - 26 janv. 2004 à 15:54
cs_sahraoui Messages postés 1 Date d'inscription mercredi 19 février 2003 Statut Membre Dernière intervention 31 octobre 2004 - 31 oct. 2004 à 07:03
C'est quoi qui ne va pas dans ce code ???

<?
$Langue = substr($HTTP_ACCEPT_LANGUAGE, 0, 2);

if ($Langue == "fr") || (eregi("msie.[5;6]",$HTTP_USER_AGENT))
{ include('Rechercher.php'); }
else
if ($Langue == "en") || (eregi("msie.[5;6]",$HTTP_USER_AGENT))
{ include('Search.php'); } 
?>


Il y a deux (2) conditions:

1) la langue française ou anglaise (fr ou en)
2) le navigateur MSIE 5 et 6)

dans les deux (2) cas si le navigateur est MSIE 5 ou 6 il passe à la deuxième condition qui est la langue... si c'est "fr" il inclus "Rechercher.php", si c'est "en" il inclus "Search.php"

présentement, cela affiche une page blanche avec les deux (2) conditions...

POURQUOI ???

6 réponses

fmazoue Messages postés 335 Date d'inscription vendredi 14 février 2003 Statut Membre Dernière intervention 1 septembre 2015 1
26 janv. 2004 à 16:11
j'ai pas testé mais c pas une histoire de parenthèse ?

tu fais
if (condition1) || (condition2)
{
}

si tu fais
if ((condition1) || (condition2))
{
}

sa marcherai pas ?
NIARF :-p
cs_pyranhaz Messages postés 236 Date d'inscription mardi 13 mai 2003 Statut Membre Dernière intervention 13 décembre 2004
26 janv. 2004 à 16:49
une seule condition est respectée...

la condition de la langue ne fait pas le travail...
cs_mfaraday Messages postés 144 Date d'inscription vendredi 18 avril 2003 Statut Membre Dernière intervention 4 janvier 2010
27 janv. 2004 à 22:30
Salut et si tu faisais :

if(eregi("msie.[5;6]",$HTTP_USER_AGENT)
  {
    if ($Langue == "fr")
      {
       include("rechercher.php");
       }
    elseif ($Langue == "en")
       {
        include("search.php");
        }
    }


Une idée comme ça en passant.

Max :big)
cs_pyranhaz Messages postés 236 Date d'inscription mardi 13 mai 2003 Statut Membre Dernière intervention 13 décembre 2004
28 janv. 2004 à 02:17
OUI !

Effectivement, la solution a été trouvé en enlevant le style avec les || et en mettant simplement les conditions if l'une après l'autre...

merci !

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_shawn Messages postés 6 Date d'inscription mardi 10 octobre 2000 Statut Membre Dernière intervention 10 septembre 2006
3 févr. 2004 à 23:46
Yoni Alhadeff
cs_sahraoui Messages postés 1 Date d'inscription mercredi 19 février 2003 Statut Membre Dernière intervention 31 octobre 2004
31 oct. 2004 à 07:03
Tout en Gardant ta Syntaxe il faut faire ->

<?
$Langue = substr($HTTP_ACCEPT_LANGUAGE, 0, 2);

if ( ($Langue == "fr") || (eregi("msie.[5;6]",$HTTP_USER_AGENT)) )
{ include('Rechercher.php'); }
else
if (($Langue == "en") || (eregi("msie.[5;6]",$HTTP_USER_AGENT) )
{ include('Search.php'); }
?>

UNE CONDITION EST TJ ENTRE PARENTHESE ICI TA CONDITION EST
   ($Langue  == "fr") || (eregi("msie.[5;6]",$HTTP_USER_AGENT)) 


Ce n'est pas 2 condtions pour le IF c'est une seul :-)
Rejoignez-nous