8768 sujets

Développement web côté serveur, CMS

Bonjour,
j'aimerai comprendre comment comparer une variable dans une boucle IF.
Je dois faire appel à une variable reçue, pour afficher la bonne page.
j'ai fait ce code:

<?php
// Set session variables
$_SESSION["nature"]= $_POST['nature'];
$_SESSION["Balises"] =  $_SESSION["Balises"] . $_SESSION["nature"];
echo $_SESSION["Balises"];
?>
</br></br>
<?php
$pdt = $_SESSION["nature"];
echo $pdt;
// affiche bien la balise reçue 

if{ ($pdt == ("[PDT]") // affiche une erreur à cette ligne 23

echo "oui";
	
}
else{ 
echo "non");
}
?>

le message est

Parse error: syntax error, unexpected '{', expecting '(' in C:\wamp\www\_Dev\type.php on line 23


Merci.
Meilleure solution
Salut,

a priori il suffit de lire le message :
tu as mis un { alors qu'il attend une (

La structure du "si" c'est entre parenthèse la condition puis le "alors" est entre accolades après les parenthèses de la condition

En lisant ton code :

if{ ($pdt == ("[PDT]")

=>
if ($pdt == ("[PDT]") {
//ton code du alors 
}
Bonjour,

le message d'erreur me semble clair, tu as un problème entre l'accolade et la parenthèse :
Essaie ça :


if ($pdt == ("[PDT]") {
    echo "oui";
}
Salut

Je rejoins la réponse des copains au dessus
mais en plus je rajouterais que tu as une erreur dans le else

else{ 
echo "non"); // ICI tu as une parenthèse fermante ")" qui n'a rien à faire ici.
}


à transformer en

else{ 
   echo "non";
}
Bonjour à tous,
Forcément si je mets l'accolade avant les conditions!!!.
Et des parenthèses un peu partout !!!!

if ($pdt == "[PDT]") {
    echo "oui";
} else {
    echo "non";
}


Merci beaucoup pour votre aide.