Pas d'affichage après un if else
Bonjour à tous,
J'ai un soucis d'affichage d'un message d'erreur, mais je n'ai aucune idée pourquoi. J'aurai besoin de vos connaissances.
Control du formulaire:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
| if (isset($_POST['logIn'])) {
// On initialise le tableau des erreurs
$errors_log = [];
/* Controle EMAIL
*****/
if (empty($_POST['email']) OR !verifmail($_POST['email'])) {
$id_ctrl = 1;
$erreur_form = 'erreur_form_alert';
$errors_log['email'] = $erreur_form;
$erreur_mail_pass = " Verifier votre email et/ou votre mot de passe ! ";
}
if(!empty($_POST['email'])){
$inc_con_bdd = (file_exists(ROOT_ADMIN_APP . 'class_db.php')) ? include_once (ROOT_ADMIN_APP . 'class_db.php') : false;
$sql = "SELECT * FROM users WHERE email = :email";
$req = $bdd->prepare($sql);
$req->bindValue(":email", $_POST['email'], PDO::PARAM_STR);
$req->execute();
$user = $req->fetch();
if(!$user){
$id_ctrl = 2;
// CSS mise en forme alerte
$erreur_form = 'erreur_form_alert';
$errors_log['email'] = $erreur_form;
// Proposition si mail existe pas !
$erreur_mdp_modif = "Mot de passe perdu ?";
$erreur_text = "Voulez vous créer un compte ?";
//header("location: index.php?p=register");
} |
J'appelle le control du code erreur
Code:
1 2 3 4 5 6 7 8 9 10
| <?php if (isset($errors_log) ) : ?>
<div class="<?php echo @$erreur_form ?>">
<?php if ($id_ctrl = 1 ) : ?>
<p><?php echo @$erreur_mail_pass; ?></p>
<?php else: ?>
<a href="#"><?php echo @$erreur_mdp_modif ?></a> -
<a href="#"><?php echo @$erreur_text ?></a>
<?php endif ?>
</div>
<?php endif ?> |
Alors mon soucis ce situe dans la partie else et ne fait pas apparaitre les deux liens avec les propositions de liens et cela malgré ($id_ctrl ) reconnu !
Je rajoute les dumps:
Erreur formulaire vide:
Citation:
C:\wamp64\www\pizzeria\admin\includes\function.php:9:int 1
C:\wamp64\www\pizzeria\admin\includes\function.php:9:string ' Verifier votre email et/ou votre mot de passe ! ' (length=49)
C:\wamp64\www\pizzeria\admin\includes\function.php:9:null
C:\wamp64\www\pizzeria\admin\includes\function.php:9:null
Erreur en cas de non existence du mail dans la bdd:
Citation:
C:\wamp64\www\pizzeria\admin\includes\function.php:9:int 2
C:\wamp64\www\pizzeria\admin\includes\function.php:9:null
C:\wamp64\www\pizzeria\admin\includes\function.php:9:string 'Mot de passe perdu ?' (length=20)
C:\wamp64\www\pizzeria\admin\includes\function.php:9:string 'Voulez vous créer un compte ?' (length=30)
En fait, les valeurs => "$erreur_mdp_modif" ainsi que => "$erreur_text" existe, mais ne s'affiche pas après else.
Voila j'espère que j'ai n'ai pas été trop brouillon dans mon explication.
Merci de vos aides et explications
JLuc