IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

code en php if et else


Sujet :

Langage PHP

  1. #1
    Membre éprouvé
    Inscrit en
    Août 2008
    Messages
    1 596
    Détails du profil
    Informations forums :
    Inscription : Août 2008
    Messages : 1 596
    Par défaut code en php if et else
    Bonjour, sans rigoler ni parler de bretelles machin

    a quoi sert ce bout de code ??

    je veux juste comprendre l'utilité et la differnce entre les deux cas

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    else {
            echo 'search : ' . $_SESSION['search'];
            if ($NMC == "") {
                $NC = strtoupper($_SESSION['search']);
                $NMC = $NC;
            } else
                if (isset($_SESSION['search'])) {
                $NC = strtoupper($_SESSION['search']);
                $NMC = strtoupper($_SESSION['search']);
            } else  $NC = strtoupper($NMC); //$NMC ;

  2. #2
    Expert confirmé
    Avatar de Séb.
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    5 347
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 347
    Billets dans le blog
    17
    Par défaut
    Ton extrait est incomplet (où est l'accolade fermante du 1er if() ?) et mal formaté/indenté.

    Dans ces conditions dur de te répondre.

  3. #3
    Membre éprouvé
    Inscrit en
    Août 2008
    Messages
    1 596
    Détails du profil
    Informations forums :
    Inscription : Août 2008
    Messages : 1 596
    Par défaut
    C'EST COMME CA
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    echo 'search : ' . $_SESSION['search'];
            if ($NMC == "") {
                $NC = strtoupper($_SESSION['search']);
                $NMC = $NC;
            } else
                if (isset($_SESSION['search'])) {
                $NC = strtoupper($_SESSION['search']);
                $NMC = strtoupper($_SESSION['search']);
            } else  $NC = strtoupper($NMC); //$NMC ;

  4. #4
    Expert confirmé
    Avatar de Séb.
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    5 347
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 347
    Billets dans le blog
    17
    Par défaut
    Ah OK, donc non seulement on doit deviner à quoi sert ton code, et en plus on doit le formater correctement

    Ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    echo 'search : ' . $_SESSION['search'];
            if ($NMC == "") {
                $NC = strtoupper($_SESSION['search']);
                $NMC = $NC;
            } else
                if (isset($_SESSION['search'])) {
                $NC = strtoupper($_SESSION['search']);
                $NMC = strtoupper($_SESSION['search']);
            } else  $NC = strtoupper($NMC); //$NMC ;
    Correctement indenté donne :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    echo 'search : ' . $_SESSION['search'];
    if ($NMC == "") {
        $NC = strtoupper($_SESSION['search']);
        $NMC = $NC;
    } else
        if (isset($_SESSION['search'])) {
            $NC = strtoupper($_SESSION['search']);
            $NMC = strtoupper($_SESSION['search']);
        } else  
            $NC = strtoupper($NMC); //$NMC ;
    On y voit *un peu* plus clair.

    Et comme en général on n'aime pas avoir des if/else sans {} ça donnerait :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    echo 'search : ' . $_SESSION['search'];
    if ($NMC == "") {
        $NC = strtoupper($_SESSION['search']);
        $NMC = $NC;
    } else {
        if (isset($_SESSION['search'])) {
            $NC = strtoupper($_SESSION['search']);
            $NMC = strtoupper($_SESSION['search']);
        } else {
            $NC = strtoupper($NMC);
        }
    }
    ... mais sans certitude hein, j'ai déjà eu des mauvaises surprises sur l'exécution de if/else multiples sans {}

    Aplanissons le if/else/if pour y voir encore plus clair :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    echo 'search : ' . $_SESSION['search'];
    if ($NMC == "") {
        $NC = strtoupper($_SESSION['search']);
        $NMC = $NC;
    } elseif (isset($_SESSION['search'])) {
        $NC = strtoupper($_SESSION['search']);
        $NMC = strtoupper($_SESSION['search']);
    } else {
        $NC = strtoupper($NMC);
    }
    On voit que les 2 premiers blocs reviennent au même, en fusionnant les 2 premiers if() ça donnerait :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    echo 'search : ' . $_SESSION['search'];
    if ($NMC == "" || isset($_SESSION['search'])) {
        $NC = strtoupper($_SESSION['search']);
        $NMC = $NC;
    } else {
        $NC = strtoupper($NMC);
    }
    Voilà.

    Donc $NC et $NCM auront la valeur en majuscule de ta variable de session search si elle est définie ou si $NMC est vide
    Dans les autres cas $NC vaudra $NMC en majuscule
    => On cherche à donner une valeur à $NC : la variable de session, sinon on se rabat sur $NMC

    Le script ne me paraît pas bon car :
    -- On utilise $_SESSION['search'] (echo) *puis* on teste s'il est défini, normalement c'est l'inverse

Discussions similaires

  1. Encoder le code source PHP
    Par berceker united dans le forum Langage
    Réponses: 18
    Dernier message: 31/07/2009, 20h57
  2. comment sécurisez mon code source php?
    Par dahan dans le forum Zend
    Réponses: 2
    Dernier message: 08/02/2007, 20h44
  3. Code sensible PHP, secret à 100% ?
    Par Droïde Système7 dans le forum Langage
    Réponses: 2
    Dernier message: 13/07/2006, 15h30
  4. intégré une animation flash dans un code en PHP
    Par maroweb dans le forum Flash
    Réponses: 2
    Dernier message: 28/05/2006, 13h34
  5. [Sécurité] Afficher le code source PHP
    Par tigzirt dans le forum Langage
    Réponses: 2
    Dernier message: 12/05/2006, 08h42

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo