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 :

Probleme de fonction if


Sujet :

Langage PHP

  1. #1
    Nouveau membre du Club
    Inscrit en
    Octobre 2008
    Messages
    57
    Détails du profil
    Informations forums :
    Inscription : Octobre 2008
    Messages : 57
    Points : 38
    Points
    38
    Par défaut Probleme de fonction if
    Bonjour, ma fonction ne marche pas mais j'arrive pas à comprendre pourquoi?*

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
     
    function affmenu($statut){
    .....
    if(empty($_SESSION['sess_nom'])){
    			$name = $_SESSION['sess_nom'];
    			$surname = $_SESSION['sess_prenom'];
    			$menu = "<h3>",$name," ",$surname,"</h3>";
    			}
    			else{	
    				$menu = "&nbsp;";
    			}
     
    			$menu = $menu,"<br/><br/>
    			<p><A HREF=\"menu1.php\">> Menu 1 </A></p>
    			<p><A HREF=\"menu2.php\">> Menu 2</A></p>
    			<p><A HREF=\"menu3.php\">> Menu 3</A></p>
    			<p><A HREF=\"menu4.php\">> Menu 4</A></p>";
    	return $menu;
    }
    PS: $_SESSION['sess_nom'] est une variable de session qui n'incrémente lorsque l'utilisateur s'identifie.
    Et dans mon HTML j'ai un appel de cette fonction:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    		<?php 
    			session_start();
    			$menu = affmenu($_SESSION['sess_statut']);
    			echo $menu;
    		?>
    Si quelqu'un voit le "pourquoi du comment"?

    Leeloe

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Bonjour,

    Pourrais-tu nous dire ce que tu veux obtenir comparé a ce que tu obtiens actuellement ?

    Dans un premier temps cela me parrait etrange :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    if(empty($_SESSION['sess_nom'])){
    			$name = $_SESSION['sess_nom'];
    Si ta variable est "empty", $name en prend la valeur ?

  3. #3
    Nouveau membre du Club
    Inscrit en
    Octobre 2008
    Messages
    57
    Détails du profil
    Informations forums :
    Inscription : Octobre 2008
    Messages : 57
    Points : 38
    Points
    38
    Par défaut
    Cela m'affiche rien du tout, même pas le reste des éléments de ma page. Cela bug dès qui ça traite cette fonction.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    if(empty($_SESSION['sess_nom'])){
    			$name = $_SESSION['sess_nom'];
    En gros, si il y a un nom, ma variable prends ce nom pour l'afficher en haut du menu, comme le "Bienvenue Leeloe" affiché en haut à droite de ce forum.

    Et oui, cette variable retourne bien le nom demandé.

  4. #4
    Membre habitué
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    329
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 329
    Points : 126
    Points
    126
    Par défaut rep
    essai ça

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    if(isset($_SESSION['sess_nom'])){
    			$name = $_SESSION['sess_nom'];
    			$surname = $_SESSION['sess_prenom'];
    			$menu = "<h3>",$name," ",$surname,"</h3>";        
                                    }
    else{$menu = "&nbsp;";}

  5. #5
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    En gros, si il y a un nom, ma variable prends ce nom
    Ton if dit le contraitre.
    cf. la condition proposée par Carmen.

  6. #6
    Membre habitué
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    329
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 329
    Points : 126
    Points
    126
    Par défaut rep
    ok

    Le plus simple c'est ca je pense

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    if($_SESSION['sess_nom']==""){echo"utilisateur inconnu";}
    else{echo"bienvenue sur developpez.com ".$_SESSION['sess_nom']."".$_SESSION['sess_prenom']."";}

  7. #7
    Nouveau membre du Club
    Inscrit en
    Octobre 2008
    Messages
    57
    Détails du profil
    Informations forums :
    Inscription : Octobre 2008
    Messages : 57
    Points : 38
    Points
    38
    Par défaut
    Merci pour vos réponses, j'ai essayé les codes de carmen256 sans plus de succès. Je comprends pas...

  8. #8
    Membre averti
    Profil pro
    Inscrit en
    Août 2005
    Messages
    483
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 483
    Points : 309
    Points
    309
    Par défaut
    plop plop

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $menu = $menu,"<br/><br/>
    Ne faudrait-il pas mettre un point à la place de la virgule pour la concaténation de chaine de caractère?

    Même remarque pour cette ligne :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $menu = "<h3>",$name," ",$surname,"</h3>";
    A moins que ca soit une faute de frappe

    Enfin

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    function affmenu($statut){
    .....
    // si $_SESSION['sess_nom'] est vide
    if(empty($_SESSION['sess_nom']))
    {
    	$menu = "&nbsp;";
    }
    else
    {	
    	$name = $_SESSION['sess_nom'];
    	$surname = $_SESSION['sess_prenom'];
    	$menu = "<h3>".$name." ".$surname."</h3>";
    }
    $menu = $menu."<br/><br/>
    <p><a href=\"menu1.php\">> Menu 1 </a></p>
    <p><a href=\"menu2.php\">> Menu 2</a></p>
    <p><a href=\"menu3.php\">> Menu 3</a></p>
    <p><a href=\"menu4.php\">> Menu 4</a></p>";
    	return $menu;
    }
    cordialement

  9. #9
    Nouveau membre du Club
    Inscrit en
    Octobre 2008
    Messages
    57
    Détails du profil
    Informations forums :
    Inscription : Octobre 2008
    Messages : 57
    Points : 38
    Points
    38
    Par défaut
    Ben... ça marche nikel! Merci à tous,

    Leeloe


+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. probleme de fonction javascript
    Par cach dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 06/07/2005, 10h34
  2. Réponses: 17
    Dernier message: 24/03/2005, 12h24
  3. [langage] problème avec fonction read
    Par domidum54 dans le forum Langage
    Réponses: 2
    Dernier message: 30/03/2004, 20h42
  4. [VB6]Problème de fonction
    Par mustang-ffw02 dans le forum VB 6 et antérieur
    Réponses: 13
    Dernier message: 27/03/2004, 15h09
  5. Probleme de fonction
    Par yenna dans le forum ASP
    Réponses: 6
    Dernier message: 01/03/2004, 14h10

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