Problème avec mes instruction if .. elseif.. else [Résolu]

Messages postés
49
Date d'inscription
lundi 9 janvier 2006
Statut
Membre
Dernière intervention
17 février 2009
- - Dernière réponse : BunoCS
Messages postés
14652
Date d'inscription
lundi 11 juillet 2005
Statut
Modérateur
Dernière intervention
8 novembre 2019
- 11 oct. 2007 à 14:37
Bonjour!
J'ai un script qui me pose un petit souci et je n'arrive pas avoir pour
quoi je n'arrive pas à rentrer dans mes instructions(if..elseif..else).

En effet mon script fonctionne bien, il execute bien la requete et me
recupere le $statut .par contre ne rentrepas dans mon bloc
d'instruction pour faire la redirection même si les conditions sont
verifier. les instruction du else sont systematiquement executés.


si quelqu'un peut m'aider merci !

Voila mon code:
<?php
$this->login = $_POST["login"];
    $this->password = $_POST["password"];
   
     
    //UNE CONDITION POUR VERIFIER SI login et password SONT VIDES
   
     if(!isset ($this->login) || trim($this->login) == ""){
             $this->message1 = "E-mail obligatoire!";
            $menu->menu_accueil();// Redirection vers menu.class.php
            echo "<tr><td>$this->message1</td></tr>";
            exit();
      }else if(!isset ($this->password) || trim($this->password) == ""){
             $this->message1 = "Mot de passe obligatoire!";
            $menu->menu_accueil();// Redirection vers menu.class.php
            echo "<tr><td>$this->message1</td></tr>";
            exit();
      }else{
       
        /*FONCTION POUR CRYPTER LE PASSWORD*/
        $passcrypt = md5($this->password);
       
        echo "Bonjour:<tr><td>$passcrypt</td></tr>AAA
";
       
         $recordSet = &$conn->Execute("select * from ecomic.compte_utilisateur where mail='$this->login' and passcrypt='$passcrypt'");
       
         if (!$recordSet)
            print $conn->ErrorMsg();
       
        else{
            while (!$recordSet->EOF) {
                print $recordSet->fields[0].' '.$recordSet->fields[1].' '.$recordSet->fields[2].' '.$recordSet->fields[3].'
                '.$recordSet->fields[4].''.$recordSet->fields[5].''.$recordSet->fields[6].''.$recordSet->fields[7].'
                '.$recordSet->fields[8].'
';
                $this->statut =$recordSet->fields[6];
               
                echo ' le statut est:'.$this->statut;
               
                //print_r ($this);
                //print_r ($this->statut);
                       
                //REDIRECTION VERS LES PAGES D'ACCUEIL POUR CHAQUE STATUT
                if($this->statut =='administrateur'){
                    echo'je suis la';
                    print_r ($this->statut);
                    $menu->menu_administrateur(); // Redirection vers menu.class.php
                    exit();
                } elseif ($this->statut =='coll){
                    echo'Me voici';
                    print_r ($this->statut);
                    $menu->menu_coll(); // Redirection vers menu.class.php
                    exit();
                } elseif($this->statut =='adh'){
                    echo'coucou';
                    $menu->menu_adh(); // Redirection vers menu.class.php
                    exit();
                }else {
                    echo 'contacter votre administrateur! problème avec votre compte';
                     // Pas de menu adapté //Redirection vers menu.class.php
                    exit();
                }
                $recordSet->MoveNext();
                $recordSet->Close(); # optional
            }
       
        }
     }
        
    $conn->Close(); # optional
   

?>
Afficher la suite 

5 réponses

Meilleure réponse
Messages postés
14652
Date d'inscription
lundi 11 juillet 2005
Statut
Modérateur
Dernière intervention
8 novembre 2019
90
3
Merci
Salut,
J'ai remarqué 2 petites choses dans ton code:
- qd tu fais le test avec "administrateur", ne faut-il pas mettre des guillemets " plutôt que des côtes ' ?
- qd tu fais le test avec "col", il manque la côte fermante

Peut-être sont-ce des pistes...

Buno
----------------------------------------
L'urgent est fait, l'impossible est en cours. Pour les miracles, prévoir un délai...
Le site de mon mariage

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 207 internautes nous ont dit merci ce mois-ci

Commenter la réponse de BunoCS
Messages postés
49
Date d'inscription
lundi 9 janvier 2006
Statut
Membre
Dernière intervention
17 février 2009
3
Merci
Bonjour,

merci pour ton aide.
Au fait j'ai remis les côtes comme il fallait et aussi lmes variables administrateur ou col qui proviennent de ma BD avaient des caractères espaces avant ou après et j'ai don utiliser la fonction trim()-> le problème est reglé.

Merci

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 207 internautes nous ont dit merci ce mois-ci

Commenter la réponse de cs_daris
Messages postés
14652
Date d'inscription
lundi 11 juillet 2005
Statut
Modérateur
Dernière intervention
8 novembre 2019
90
3
Merci
Cool!
Content de d'avoir aider...
Tu peux donc fermer le topic maintenant

@+

Buno
----------------------------------------
L'urgent est fait, l'impossible est en cours. Pour les miracles, prévoir un délai...
Le site de mon mariage

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 207 internautes nous ont dit merci ce mois-ci

Commenter la réponse de BunoCS
Messages postés
49
Date d'inscription
lundi 9 janvier 2006
Statut
Membre
Dernière intervention
17 février 2009
3
Merci
Au fait copmment faire pour cloturer la discussion?
merci

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 207 internautes nous ont dit merci ce mois-ci

Commenter la réponse de cs_daris
Messages postés
14652
Date d'inscription
lundi 11 juillet 2005
Statut
Modérateur
Dernière intervention
8 novembre 2019
90
3
Merci
En face de chaque réponse (en dessous du pseudo de la personne), tu as le bouton "Réponse Acceptée"
Il suffit de cliquer dessus pour montrer à tout le monde que ton problème a eu une solution

Buno
----------------------------------------
L'urgent est fait, l'impossible est en cours. Pour les miracles, prévoir un délai...
Le site de mon mariage

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 207 internautes nous ont dit merci ce mois-ci

Commenter la réponse de BunoCS