Problème de "if" en PHP
Résolu
Shenko90
-
Neliel Messages postés 6146 Date d'inscription Statut Contributeur Dernière intervention -
Neliel Messages postés 6146 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour à tous,
Je suis en train de créer mon premier site et j'ai un problème avec une structure "if" en PHP à l'intérieur d'une page HTML. Voici mon code :
<?php
if ($connex == true)
{
?>
<a href='deco.php' target=page>déconnexion</a><br />
<a href='chang_psw.html' target=page>changer le mot de passe</a>
<?php
}
else{
?>
<a href='form_connex.html' target=page>connexion</a>
<?php
}
?>
Ma page devrait m'afficher soit un lien "déconnexion" et un lien "changer le mot de passe", soit un lien "connexion"; mais au lieu de ça elle m'affiche les trois.
Quelqu'un pourrait-il m'expliquer pourquoi svp?
Merci d'avance de vos réponses.
Shenko90
Je suis en train de créer mon premier site et j'ai un problème avec une structure "if" en PHP à l'intérieur d'une page HTML. Voici mon code :
<?php
if ($connex == true)
{
?>
<a href='deco.php' target=page>déconnexion</a><br />
<a href='chang_psw.html' target=page>changer le mot de passe</a>
<?php
}
else{
?>
<a href='form_connex.html' target=page>connexion</a>
<?php
}
?>
Ma page devrait m'afficher soit un lien "déconnexion" et un lien "changer le mot de passe", soit un lien "connexion"; mais au lieu de ça elle m'affiche les trois.
Quelqu'un pourrait-il m'expliquer pourquoi svp?
Merci d'avance de vos réponses.
Shenko90
A voir également:
- Problème de "if" en PHP
- Easy php - Télécharger - Divers Web & Internet
- Expert php pinterest - Télécharger - Langages
- Retour a la ligne php ✓ - Forum PHP
- Php alert - Forum PHP
- Saut de ligne php ✓ - Forum PHP
6 réponses
Bonjour,
As-tu bien enregistré ton code en .php et non pas .html ?
car on dira que le php n'est pas interprété..
As-tu bien enregistré ton code en .php et non pas .html ?
car on dira que le php n'est pas interprété..
Bonjour,
Je pense que le problème vient de ta variable $connex... c'est un booléen ? Comment la déclare tu ?
Je pense que le problème vient de ta variable $connex... c'est un booléen ? Comment la déclare tu ?
Bonjour,
j'ai essayé de mettre :
echo $connex;
comme tu me l'a dit mais ça ne changeait rien. J'ai alors essayer d'initialiser $connex juste avant de faire le test, mais là non plus aucune différence.
J'ai l'impression que le php n'est pas pris en compte car même quand je fais :
echo "salut";
ça n'apparait pas.
Shenko90
j'ai essayé de mettre :
echo $connex;
comme tu me l'a dit mais ça ne changeait rien. J'ai alors essayer d'initialiser $connex juste avant de faire le test, mais là non plus aucune différence.
J'ai l'impression que le php n'est pas pris en compte car même quand je fais :
echo "salut";
ça n'apparait pas.
Shenko90
Hello,
Perso, je ne suis pas fan de ce genre de pratique essaye comme ceci :
<?php
if ($connex == true)
{
echo "<a href='deco.php' target=page>déconnexion</a><br />";
echo "<a href='chang_psw.html' target=page>changer le mot de passe</a>";
}
else{
echo "<a href='form_connex.html' target=page>connexion</a>";
}
?>
Question, pourquoi mets-tu "target=page", tu utilise des frames ?
Perso, je ne suis pas fan de ce genre de pratique essaye comme ceci :
<?php
if ($connex == true)
{
echo "<a href='deco.php' target=page>déconnexion</a><br />";
echo "<a href='chang_psw.html' target=page>changer le mot de passe</a>";
}
else{
echo "<a href='form_connex.html' target=page>connexion</a>";
}
?>
Question, pourquoi mets-tu "target=page", tu utilise des frames ?
Bonjour,
J'avais d'abord essayer de coder comme tu me le dit mais j'avais un problème d'affichage. J'ai tout de même réessayer avec ton code, au cas où j'aurai fait une erreur mais voilà le résultat :
déconnexion
"; echo "changer le mot de passe"; } else{ echo "connexion"; } ?>
avec "changer le mot de passe" et "connexion" en liens, mais pas "déconnexion".
Pour répondre à ta question, j'utilise en effet des frames.
Shenko90
J'avais d'abord essayer de coder comme tu me le dit mais j'avais un problème d'affichage. J'ai tout de même réessayer avec ton code, au cas où j'aurai fait une erreur mais voilà le résultat :
déconnexion
"; echo "changer le mot de passe"; } else{ echo "connexion"; } ?>
avec "changer le mot de passe" et "connexion" en liens, mais pas "déconnexion".
Pour répondre à ta question, j'utilise en effet des frames.
Shenko90
Non, ce n'est pas ça le problème, je code mes if comme le fait l'auteur du sujet, et jamais aucun soucis...
Je suis sûr que son problème viens de la variable $connex...
"Trotti Trotta, Monsieur P, il y a des anges qui veulent un bisou..."
"Même les joujou de Monsieur P ont besoin de joujou"
Je suis sûr que son problème viens de la variable $connex...
"Trotti Trotta, Monsieur P, il y a des anges qui veulent un bisou..."
"Même les joujou de Monsieur P ont besoin de joujou"
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Ensuite lance ton navigateur et connecte toi à 127.0.0.1/[nom de ta page].php
Je croyais qu'on pouvait mettre du php dans une page .html, je me trompe ?
Merci pour tes conseil fxtaa, je vais essayer ça.
Shenko90
Deuxieme point: il te faut un serveur (local) comme dit fxtaa pour intérpreter ce code php. Effectivement, Wamp est une très bonne solution.
Mettre du php dans une page html est mal-dit. Pour que le serveur comprenne et interpretre le php, ta page doit être en .php
Rien ne t'empêche de mettre du html dedans.
Le <?php ?> est interpreté coté serveur, (serveur apache la plupart du temps + module php), et peut exécuter des requêtes sql : wamp = windows apache mysql php.
Donc pour résumer pour que ta page php fonctionne correctement il faut que tu installes wamp pour que ta page php soit bien interprété.
Ensuite tu nommes ta page php index.php et tu la met dans le répertoire "www" de ton install wamp. Tu lances ton navigateur : http://127.0.0.1 et voila