Bonjour,

J'ai effectué un deux formulaires en HTML :
- un pour la connexion:
upload/1595087984-80068-formulaireconnexion.png

- un pour l'inscription:
upload/1595088024-80068-formulauiredinscription.png

A présent, je suis entrain d'attaquer la partie PHP des formulaires, et je rencontre un problème avec le formulaire de connexion. En effet, je souhaite faire apparaître trois messages :
- le premier message qui dit : "tu as oublié de rentrer l'email OU le mot de passe
- le deuxième message qui dit : "tu as oublié de rentrer l'email ET le mot de passe
- le troisième message qui dit : "Ah ! Te revoilà !". (dans le cas ou j'ai repli tous les champs)

Ces messages doivent apparaître dans les conditions suivantes:
- pour le premier message : si un des deux champs (email ou mot de passe) n'est pas rempli;
- pour le deuxième message : si les deux champs ne sont pas remplis;
- pour le troisième message : si les deux champs sont remplis.

J'ai bien utilisé un "if" en premier, un "elseif" en second et un "else" en dernière position.

Voici le code correspond que j'ai tapé en plusieurs parties :
Partie 1 :
upload/1595088875-80068-partieunformulaireconnexion.png

Partie 2:
upload/1595088960-80068-partiedeuxformulaireconnexion.png

Partie 3 :
upload/1595089033-80068-partie3formulaireconnexion.png

Lorsque je remplis le formulaire, que ce soit les deux champs ou bien un des deux ou aucun des deux, cela m'affiche dans tous les cas "Ah ! Te revoilà !".
Je n'arrive pas à cerner le problème, quelqu'un pourrait m'aider s'il vous plait?
Merci.
anthonym737 a écrit :
Bonjour,

J'ai effectué un deux formulaires en HTML :
- un pour la connexion:
upload/1595087984-80068-formulaireconnexion.png

- un pour l'inscription:
upload/1595088024-80068-formulauiredinscription.png

A présent, je suis entrain d'attaquer la partie PHP des formulaires, et je rencontre un problème avec le formulaire de connexion. En effet, je souhaite faire apparaître trois messages :
- le premier message qui dit : "tu as oublié de rentrer l'email OU le mot de passe
- le deuxième message qui dit : "tu as oublié de rentrer l'email ET le mot de passe
- le troisième message qui dit : "Ah ! Te revoilà !". (dans le cas ou j'ai repli tous les champs)

Ces messages doivent apparaître dans les conditions suivantes:
- pour le premier message : si un des deux champs (email ou mot de passe) n'est pas rempli;
- pour le deuxième message : si les deux champs ne sont pas remplis;
- pour le troisième message : si les deux champs sont remplis.

J'ai bien utilisé un "if" en premier, un "elseif" en second et un "else" en dernière position.

Voici le code correspond que j'ai tapé en plusieurs parties :
Partie 1 :
upload/1595088875-80068-partieunformulaireconnexion.png

Partie 2:
upload/1595088960-80068-partiedeuxformulaireconnexion.png

Partie 3 :
upload/1595089033-80068-partie3formulaireconnexion.png

Lorsque je remplis le formulaire, que ce soit les deux champs ou bien un des deux ou aucun des deux, cela m'affiche dans tous les cas "Ah ! Te revoilà !".
Je n'arrive pas à cerner le problème, quelqu'un pourrait m'aider s'il vous plait?
Merci.

Pour l'initialisation du message :

<?php
$message1='tu as oublié de rentrer l\'email OU le mot de passe';
$message2='tu as oublié de rentrer l\'email ET le mot de passe';
$message3='Ah ! Te revoilà !';
$user=trim(isset($_POST['user']) ? $_POST['user'] : '');
$password=trim(isset($_POST['password']) ? $_POST['password'] : '');
$message=strlen($user) == 0 && strlen($password) == 0 ? $message2 : strlen($user) > 0 && strlen($password) > 0 ? $message3 : $message1;
?>

Quant à ton erreur où le texte "Ah ! Te revoilà !" s'affiche systématiquement, regardes bien tes instructions... tu commences par fermer le bloc PHP, puis du sérialise le texte et enfin du ouvres un nouveau bloc PHP. Il est donc normal que ce texte soit systématiquement affiché.
Modifié par sepecat (19 Jul 2020 - 08:16)
Salut, as tu réussi a régler le problème ?
Modifié par noal (21 Jan 2021 - 20:08)