Résolu Problème dans mon code PHP sur un système par rang

Statut
N'est pas ouverte pour d'autres réponses.

WellKoopa

Le roi des Koopas
Premium
Inscription
17 Octobre 2014
Messages
540
Réactions
34
Points
11 630
Bonjour, j'ai récemment fait un système pour faire cette chose:
La personne qui est rang 1 à accès à certaines pages du sites depuis le menu "dropdown".
La personne qui est rang 2 ou 3 à accès à la page admin et d'autre pages depuis le menu "dropdown".
Met comme le script est mal placer sa je le ses met je ses pas trop ou le placer. Car y'a des echo qui gène sa fait 1 semaine que je galère ... :mmh:

Donc je vous passe le script PHP d'ou viens mon soucis et j'ai une erreur PHP qui apparais:
Parse error: syntax error, unexpected 'rank' (T_STRING), expecting ',' or ';' in /home/u311284448/public_html/header.php on line 58

Sinon voici mon code
Code:
<ul class="nav navbar-nav navbar-right">
<?php
                    if(isset($_SESSION['pseudo']))
{
                        echo  '
                        <li class="dropdown"><a aria-expanded="false" href="#" class="dropdown-toggle" data-toggle="dropdown"><profil class="pull-left">
<img src="<?php echo $url; ?>/img/curseur.png"/>
</profil> &nbsp; Bienvenue '.$_SESSION['pseudo'].'><b class="caret"></b></a>
<ul class="dropdown-menu">
<?php if($_SESSION['rank'] == 2 || $_SESSION['rank'] == 3) { echo '
<li><a href="administration"><i class="fa fa-cog fa-spin" style="margin-right:1px;"></i> Administration</a></li>
<li><a href="#"><i class="fa fa-newspaper-o" style="margin-right:1px;"></i> Ajouter un article</a></li>
<li><a href="#"><i class="fa fa-times" style="margin-right:1px;"></i> Supprimer un article</a>'; } ?>
<li><a href="chat.php"><i class="fa fa-comment" style="margin-right:1px;"></i> Chat</a></li>
<li><a href="editer"><i class="fa fa-pencil-square-o" style="margin-right:1px;"></i> Editer le profil</a></li>
<li><a href="info"><i class="fa fa-info-circle"></i> Informations</a></li>
<li><a href="logout"><i class="fa fa-sign-out" style="margin-right:-1px;"></i> Déconnexion</a></li>    </ul>
                        </li>';
            
}else{
                    echo '<li><a href="login"><i class="fa fa-user"></i> Connexion</a></li>
                                              <li><a href="inscription"><i class="fa fa-user"></i> Inscription</a></li>';
                }
?>
</ul>
Je remercie la personne qui peut m'aider. car je galère énormément sur ce soucis. Met je ses que le système du script PHP du rang et très mal placer met je ses pas trop ou le mettre car si je le sort tout en bas du ?> sa marche bien sauf que Administration se trouve tout en bas du menu et moi je voudrais qu'il soit en haut.

:modo: SI VOUS N'AVEZ RIEN COMPRIS DITES LE MOI EN COMMENTAIRE J'AFFICHERAIS CE QUE JE VEUT EXACTEMENT EN SCREEN. :modo:
 

Kévin 🚀

Administrateur
Administrateur
Inscription
18 Décembre 2012
Messages
4 815
Réactions
5 500
Points
27 882
Salut,
Normalement ce code devrait mieux fonctionner
PHP:
<ul class="nav navbar-nav navbar-right">
<?php
if(isset($_SESSION['pseudo'])) {
?>
    <li class="dropdown"><a aria-expanded="false" href="#" class="dropdown-toggle" data-toggle="dropdown">
        <profil class="pull-left">
            <img src="<?php echo $url; ?>/img/curseur.png"/>
        </profil>Bienvenue <?php echo $_SESSION['pseudo']; ?><b class="caret"></b></a>
        <ul class="dropdown-menu">
<?php
if($_SESSION['rank'] == 2 || $_SESSION['rank'] == 3) {
?>
            <li><a href="administration"><i class="fa fa-cog fa-spin" style="margin-right:1px;"></i> Administration</a></li>
            <li><a href="#"><i class="fa fa-newspaper-o" style="margin-right:1px;"></i> Ajouter un article</a></li>
            <li><a href="#"><i class="fa fa-times" style="margin-right:1px;"></i> Supprimer un article</a>
<?php
}
?>
            <li><a href="chat.php"><i class="fa fa-comment" style="margin-right:1px;"></i> Chat</a></li>
            <li><a href="editer"><i class="fa fa-pencil-square-o" style="margin-right:1px;"></i> Editer le profil</a></li>
            <li><a href="info"><i class="fa fa-info-circle"></i> Informations</a></li>
            <li><a href="logout"><i class="fa fa-sign-out" style="margin-right:-1px;"></i> Déconnexion</a></li>
<?php       
}else{
?>
            <li><a href="login"><i class="fa fa-user"></i> Connexion</a></li>
            <li><a href="inscription"><i class="fa fa-user"></i> Inscription</a></li>
<?php
}
?>
        </ul>
    </li>
</ul>
Evite d'afficher du code HTML via un echo ;)

Déjà enlève le echo, c'est inutile :p

Et tu as bien mis un session_start(); en haut de ton code ?

Je comprend pas trop ton soucis la :mmh:
Tu vas la chercher ou ta SESSION RANK ??? Tu devrais plutot faire un while pour vérifier tes champs Rank.. ^^?
Je pense que les sessions sont dans son header ;)
 
Cette réponse a aidé l'auteur de cette discussion !
  • J'aime
Réactions: AwH

Louki

Ancien staff
Inscription
12 Mars 2021
Messages
7 536
Réactions
4 583
Points
10 116
Salut,
Normalement ce code devrait mieux fonctionner
PHP:
<ul class="nav navbar-nav navbar-right">
<?php
if(isset($_SESSION['pseudo'])) {
?>
    <li class="dropdown"><a aria-expanded="false" href="#" class="dropdown-toggle" data-toggle="dropdown">
        <profil class="pull-left">
            <img src="<?php echo $url; ?>/img/curseur.png"/>
        </profil>Bienvenue <?php echo $_SESSION['pseudo']; ?><b class="caret"></b></a>
        <ul class="dropdown-menu">
<?php
if($_SESSION['rank'] == 2 || $_SESSION['rank'] == 3) {
?>
            <li><a href="administration"><i class="fa fa-cog fa-spin" style="margin-right:1px;"></i> Administration</a></li>
            <li><a href="#"><i class="fa fa-newspaper-o" style="margin-right:1px;"></i> Ajouter un article</a></li>
            <li><a href="#"><i class="fa fa-times" style="margin-right:1px;"></i> Supprimer un article</a>
<?php
}
?>
            <li><a href="chat.php"><i class="fa fa-comment" style="margin-right:1px;"></i> Chat</a></li>
            <li><a href="editer"><i class="fa fa-pencil-square-o" style="margin-right:1px;"></i> Editer le profil</a></li>
            <li><a href="info"><i class="fa fa-info-circle"></i> Informations</a></li>
            <li><a href="logout"><i class="fa fa-sign-out" style="margin-right:-1px;"></i> Déconnexion</a></li>
<?php        
}else{
?>
            <li><a href="login"><i class="fa fa-user"></i> Connexion</a></li>
            <li><a href="inscription"><i class="fa fa-user"></i> Inscription</a></li>
<?php
}
?>
        </ul>
    </li>
</ul>
Evite d'afficher du code HTML via un echo ;)



Je pense que les sessions sont dans son header ;)
Il devrait pas faire un foreach de ça table pour récupérer la value de RANK ? Parce que la il est en session , mais il vient de nul part ? (ou d'une autre page mais je vois pas trop l'utilité lol :|)
 

Kévin 🚀

Administrateur
Administrateur
Inscription
18 Décembre 2012
Messages
4 815
Réactions
5 500
Points
27 882
Il devrait pas faire un foreach de ça table pour récupérer la value de RANK ? Parce que la il est en session , mais il vient de nul part ? (ou d'une autre page mais je vois pas trop l'utilité lol :|)
Moi non plus mais bon un login en sessions je veux bien, comme tu l'as dit le rank me dérange un peu lui seul peut nous répondre sur le $_SESSION['rank'];
 

WellKoopa

Le roi des Koopas
Premium
Inscription
17 Octobre 2014
Messages
540
Réactions
34
Points
11 630
Salut,

Ton topic se trouvait dans la mauvaise section https://induste.com/attachments/deplace- png.20318/, je l'ai donc déplacé dans la bonne section https://induste.com/attachments/deplacement-png.20319/. :modo:

@AwH GTP
Merci :)
Déjà enlève le echo, c'est inutile :p

Et tu as bien mis un session_start(); en haut de ton code ?

Je comprend pas trop ton soucis la :mmh:
Je vais afficher des screens tkt ;)

Tu vas la chercher ou ta SESSION RANK ??? Tu devrais plutot faire un while pour vérifier tes champs Rank.. ^^?
Pas trop compris xD
Salut,
Normalement ce code devrait mieux fonctionner
PHP:
<ul class="nav navbar-nav navbar-right">
<?php
if(isset($_SESSION['pseudo'])) {
?>
    <li class="dropdown"><a aria-expanded="false" href="#" class="dropdown-toggle" data-toggle="dropdown">
        <profil class="pull-left">
            <img src="<?php echo $url; ?>/img/curseur.png"/>
        </profil>Bienvenue <?php echo $_SESSION['pseudo']; ?><b class="caret"></b></a>
        <ul class="dropdown-menu">
<?php
if($_SESSION['rank'] == 2 || $_SESSION['rank'] == 3) {
?>
            <li><a href="administration"><i class="fa fa-cog fa-spin" style="margin-right:1px;"></i> Administration</a></li>
            <li><a href="#"><i class="fa fa-newspaper-o" style="margin-right:1px;"></i> Ajouter un article</a></li>
            <li><a href="#"><i class="fa fa-times" style="margin-right:1px;"></i> Supprimer un article</a>
<?php
}
?>
            <li><a href="chat.php"><i class="fa fa-comment" style="margin-right:1px;"></i> Chat</a></li>
            <li><a href="editer"><i class="fa fa-pencil-square-o" style="margin-right:1px;"></i> Editer le profil</a></li>
            <li><a href="info"><i class="fa fa-info-circle"></i> Informations</a></li>
            <li><a href="logout"><i class="fa fa-sign-out" style="margin-right:-1px;"></i> Déconnexion</a></li>
<?php      
}else{
?>
            <li><a href="login"><i class="fa fa-user"></i> Connexion</a></li>
            <li><a href="inscription"><i class="fa fa-user"></i> Inscription</a></li>
<?php
}
?>
        </ul>
    </li>
</ul>
Evite d'afficher du code HTML via un echo ;)



Je pense que les sessions sont dans son header ;)

Je vais tester sa ;)
 

WellKoopa

Le roi des Koopas
Premium
Inscription
17 Octobre 2014
Messages
540
Réactions
34
Points
11 630
Super sa marche ;) je vous remercie de votre aide à tous même si j'ai pas tout compris ;)
Met sa va mieux avec le code de @Fara' SEC ;) Je te remercie

Pour ceux qui n'avais pas compris mon soucis je le met en screen:

Sa c'étais mon soucis si je le mettais en dessous du ?>
422395Apres.png


Et moi je voulais ceci met grâce au code de @Fara' SEC ses fait
181877mtn.png
 
Statut
N'est pas ouverte pour d'autres réponses.
Haut