PHP Rang

Fermé
KokoPowder Messages postés 6 Date d'inscription vendredi 20 février 2015 Statut Membre Dernière intervention 21 février 2015 - Modifié par jordane45 le 21/02/2015 à 15:27
jordane45 Messages postés 38453 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 11 mars 2025 - 22 févr. 2015 à 01:58
Bonjour,
Je suis débutant en html, css, php ...
J'ai créer un site a partir d'un CMS, que j'ai personnaliser.
Cependant je souhaite rajouter un "rang" en plus parmis les 3 présents.
J'ai rajouté le rang Vip dans le fichier PHP membre.php
<td>
<?php 
if($req->rang=="1") { 
  echo "Membre"; 
} elseif($req->rang=="2") { 
  echo "Vip"; 
} elseif($req->rang=="3") { 
  echo "Moderateur"; 
} elseif($req->rang=="4") { 
  echo "Administrateur"; 
} 
?></td>
.
J'ai réussis après de nombreux essais...
Cependant pour changer le rang c'est un autre fichier(profil_membre.php) et lorsque je rejoute mon rang et que je vais sur la page rien ne s'affiche,p page blanche...

Page où se trouve la liste des membres (membres.php)
<?php 
$titre = 'Panel Admin - Membres';
include('../include/init.php');
if(connect()) {
if($rang == "Administrateur") {
include('header.php');
?>
<div class="container">
          <div class="page-header">
<?php
if(!empty($_GET['delete'])) {
  if($_GET['delete']=="no") {
    echo '<div class="alert alert-error"><button type="button" class="close" data-dismiss="alert">×</button><strong>Erreur:</strong> Vous ne pouvez pas supprimer votre compte !</div>';
  }
  if($_GET['delete']=="ok") {
    echo '<div class="alert alert-warning"><button type="button" class="close" data-dismiss="alert">×</button><strong>Succès:</strong> Le membre a été supprimer avec succès !</div>';
  }
}
if(!empty($_GET['update'])) {
  if($_GET['update']=="ok") {
    echo '<div class="alert alert-success"><button type="button" class="close" data-dismiss="alert">×</button><strong>Succès:</strong> Le membre a été modifier avec succès !</div>';
  }
}
?>
</div></div>
<!-- ====== CONTENUE DE LA PAGE ======= --> 
<div class="row-fluid">
      <div class="news-plugin" style="width:100%;">
      <h1 style="text-align: center;">Liste des membres</h1><br>
       <div class="boutique-corps" style="width: auto;margin-left: 20px;margin-right: 20px;">
       <center><h3 style="color: #084D97;text-decoration: underline;">Liste des membres</h3></center>
      
<table class="table table-bordered">
        <tr>
            <td>Pseudo</td>
            <td>Email</td>
            <td>Rang</td>
            <td>Rubis</td>
            <td>Nombre de vote</td>
        </tr>
        <?php
        $sql = $connexion->query("SELECT * FROM membres ORDER BY rang DESC");
        $sql->setFetchMode(PDO::FETCH_OBJ);
        while($req = $sql->fetch()) { ?>
        <tr>
            <td><strong><a style="color: black;" href="profil_membre.php?pseudo=<?php echo $req->pseudo; ?>"><?php echo $req->pseudo; ?></a></strong></td>
            <td><?php echo $req->email; ?></td>
            <td><?php if($req->rang=="1") { echo "Membre"; } elseif($req->rang=="2") { echo "Vip"; } elseif($req->rang=="3") { echo "Moderateur"; } elseif($req->rang=="4") { echo "Administrateur"; } ?></td>
            <td><?php if($req->rubis==null) { echo "0"; } else { echo $req->rubis; } ?></td>
            <td><?php if($req->nbr_vote==null) { echo "0"; } else { echo $req->nbr_vote; } ?></td>
        </tr>
        <?php } ?>
    </table>

       
       </div>
      </div>
    </div></div></div></div>
<?php
include('include/footer.php');
} else {
  setFlash('Veuillez être administrateur pour avoir accès a la page demandée !', 'danger');
  header('Location: ../connexion.php');
  exit();
}
} else {
  setFlash('Veuillez vous connectez pour avoir accès a la page demandée !', 'danger');
 header('Location: ../connexion.php');
 exit();
}
?>


Page (profil_membres)
<?php 
$titre = 'Panel Admin - Profils';
include('../include/init.php');
if(connect()) {
if($rang == "Administrateur") {

$PseudoM = $_GET['pseudo'];
$req_selectMembreA = $connexion->prepare('SELECT * FROM membres WHERE pseudo=:pseudo');
      $req_selectMembreA->execute(array(
        'pseudo' => $PseudoM
      ));
      $selectMembreA = $req_selectMembreA->fetch();

      $email_M = $selectMembreA['email'];
      $rangnumero_M = $selectMembreA['rang'];
      $rubis_M = $selectMembreA['rubis'];
      $nombre_voteM = $selectMembreA['nbr_vote'];
      $id_M = $selectMembreA['id'];

if($nombre_voteM == null) {
  $nombre_voteM = 0;
}
if($rubis_M == null) {
  $rubis_M = 0;
}


if ($rangnumero_M == "1") {
    $rang_M = Membre;
}
if ($rangnumero_M == "2") {
    $rang_M = Vip;
}
if ($rangnumero_M == "3") {
    $rang_M = Moderateur

if ($rangnumero_M == "4") {
    $rang_M = Administrateur;
}

if ($email_M == null) {
  $email_M = 'Non renseigner';
}

     
        if($_POST) {
          if (!empty($_POST['email'])) {
                if(!empty($_POST['password'])) {
                $mdp = sha1($_POST['password']); 
                $mdp=preg_replace('/\s/', '', $mdp);
                $updateMembre_Admin = $connexion->prepare('UPDATE membres SET passe=:passe WHERE pseudo=:pseudo');
                $updateMembre_Admin ->execute(array(
                  'passe' => $mdp,
                  'pseudo' => $PseudoM,
                ));
              }

          if(filter_var($email, FILTER_VALIDATE_EMAIL)) { 
            $updateMembre_Admin = $connexion->prepare('UPDATE membres SET email=:email, rubis=:rubis, nbr_vote=:nbr_vote, rang=:rang WHERE pseudo=:pseudo');
            $updateMembre_Admin ->execute(array(
              'email' => htmlspecialchars($_POST['email'], ENT_QUOTES),
              'rubis' => $_POST['Rubis'],
              'nbr_vote' => $_POST['NbrVote'],
              'rang' => $_POST['rang'],
              'pseudo' => $PseudoM
            ));
          } else {
            header('location: membres.php?update=email:false');
            exit();
          }
          header('Location: membres.php?update=ok');
          exit();
          }
      

          if(!empty($_POST['delete'])) {
          if($PseudoM != $pseudo) {
  
            $id_delete = $id_M; //Mes l'id d'une ligne dans ta basse de donnée
            $Delete_Membre = $connexion->prepare('DELETE FROM membres WHERE id = :id');
            $Delete_Membre->bindValue(':id', $id_delete, PDO::PARAM_INT);
            $Delete_Membre->execute();
            $Delete_Membre->closeCursor();

            header('Location: membres.php?delete=ok');
            exit();
          } else {
            header('Location: membres.php?delete=no');
            exit();
          }
        }
        }




include('header.php');
?>
<!-- ====== CONTENUE DE LA PAGE ======= --> 
<div class="row-fluid">
      <div class="news-plugin" style="width:100%;">
      <h1 style="text-align: center;">Profils des membres</h1><br>
       <div class="boutique-corps" style="width: auto;margin-left: 20px;margin-right: 20px;">
       <center><h3 style="color: #084D97;text-decoration: underline;">Profil de <?php echo $PseudoM; ?></h3></center>

    <form class="form-horizontal" method="post">
    <div class="control-group">
    <label class="control-label">Pseudo</label>
    <span class="input-large uneditable-input" style="margin-left: 20px;"><?php echo $PseudoM; ?></span>
    </div>
    <div class="control-group">
    <label class="control-label" for="inputEmail">Email</label>
    <div class="controls">
    <input class="input-large" type="text" name="email" value="<?php echo $email_M; ?>">
    </div>
    </div>
    <div class="control-group">
    <label class="control-label" for="inputPassword">Mot de Passe</label>
    <div class="controls">
    <input type="password" name="password">
    </div>
    </div>
    <div class="control-group">
    <label class="control-label" for="inputRang">Rang</label>
    <div class="controls">
    <!--<span class="input-large uneditable-input"><?php // echo $rang_M; ?></span>-->
    <SELECT name="rang">
    <OPTION value="1" <?php if($rang_M == "Membre") { echo "selected"; } ?>>Membre</OPTION>
    <OPTION value="2" <?php if($rang_M == "Vip") { echo "selected"; } ?>>Vip</OPTION>
    <OPTION value="3" <?php if($rang_M == "Moderateur") { echo "selected"; } ?>>Moderateur</OPTION>
    <OPTION value="4" <?php if($rang_M == "Administrateur") { echo "selected"; } ?>>Administrateur</OPTION>
    </SELECT>
    </div>
    </div>
    <div class="control-group">
    <label class="control-label" for="inputRubis">Rubis</label>
    <div class="controls">
    <input type="text" name="Rubis" value="<?php echo $rubis_M; ?>">
    </div>
    </div>
    <div class="control-group">
    <label class="control-label" for="inputNbrVote">Nombre de vote</label>
    <div class="controls">
    <input type="text" name="NbrVote" value="<?php echo $nombre_voteM; ?>">
    </div>
    </div>
    <div class="control-group">
    <div class="controls">
    <button type="submit" class="btn btn-success">Modifier les informations</button><br>
    </div>
    </div>
    </form>
    <a class="btn btn-danger" href="#delete" role="button" data-toggle="modal" style="margin-left: 185px;">Supprimer ce membre</a>
       
       </div>
      </div>
    </div></div></div></div>

<!-- ============= DELETE =========== -->
<div id="delete" class="modal hide fade" tabindex="-1" role="dialog" aria-labelledby="deleteLabel" aria-hidden="true">
  <div class="modal-header">
    <button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
    <h3 id="myModalLabel">Supprimer un membre</h3>
  </div>
  <div class="modal-body">
    <p>Voulez-vous vraiment supprimer le membre <strong><?php echo $PseudoM; ?></strong> ?</p>
  </div>
  <div class="modal-footer">
      <button class="btn" data-dismiss="modal" aria-hidden="true" type="text">Annuler</button>
      <form method="post">
      <input name="delete" type="hidden" value="delete">
      <button name="delete" type="submit" class="btn btn-danger" value="delete" href="">Supprimer</button>
      </form>
  </div>
</div>
<?php
include('include/footer.php');
} else {
  setFlash('Veuillez être administrateur pour avoir accès a la page demandée !', 'danger');
  header('Location: ../connexion.php');
  exit();
}
} else {
  setFlash('Veuillez vous connectez pour avoir accès a la page demandée !', 'danger');
 header('Location: ../connexion.php');
 exit();
}
?>


Merci.
A voir également:

3 réponses

jordane45 Messages postés 38453 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 11 mars 2025 4 741
21 févr. 2015 à 15:34
Bonjour,

Tu n'aurais pas oublié des guillemets par hasard ?


if ($rangnumero_M == "1") {
    $rang_M = Membre;
}
if ($rangnumero_M == "2") {
    $rang_M = Vip;
}
if ($rangnumero_M == "3") {
    $rang_M = Moderateur

if ($rangnumero_M == "4") {
    $rang_M = Administrateur;
}

if ($email_M == null) {
  $email_M = 'Non renseigner';
}


PS: Quand tu as un souci... la première chose à faire c'est de faire du debogage sur tes pages... en ajoutant des Echo / var_dump / print_r ... de tes variables pour savoir si elles contiennent bien les valeurs attendues....


Ps2 : Plutot que de faire des IF ELSIF en pagaille... regarde ce que permet de faire un SWITCH

<?php 
//ton code en if /elseif
if($req->rang=="1") { 
  echo "Membre"; 
} elseif($req->rang=="2") { 
  echo "Vip"; 
} elseif($req->rang=="3") { 
  echo "Moderateur"; 
} elseif($req->rang=="4") { 
  echo "Administrateur"; 
} 
?>

// La même chose avec un SWITCH

<?php 
switch($req->rang){
case "1" :
 echo "Membre"; 
 break;
case "2" :
 echo "Vip"; 
 break;
case "3" :
 echo "Moderateur"; 
 break;
case "4" :
 echo "Administrateur";
 break;
default:
 echo "Rang inconnu"; 
 break;
}
?>





0
KokoPowder Messages postés 6 Date d'inscription vendredi 20 février 2015 Statut Membre Dernière intervention 21 février 2015 3
21 févr. 2015 à 15:59
Bonjour ! Merci d'avoir répondu a mon poste.
Merci pour les conseil mais le switch fait bug ma page... et enfaite je cherche a concorder les 2 script.
0
jordane45 Messages postés 38453 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 11 mars 2025 4 741
22 févr. 2015 à 01:58
Tu as également oublié de fermer tes if visiblement....et également un point virgule sur l'une des lignes....


if ($rangnumero_M == "1") {
    $rang_M = Membre;
}
if ($rangnumero_M == "2") {
    $rang_M = Vip;
}
if ($rangnumero_M == "3") {
    $rang_M = Moderateur

if ($rangnumero_M == "4") {
    $rang_M = Administrateur;
}

if ($email_M == null) {
  $email_M = 'Non renseigner';
}


Devrait donc s'écrire

if ($rangnumero_M == "1") {
    $rang_M = "Membre";
}
if ($rangnumero_M == "2") {
    $rang_M ="Vip";
}
if ($rangnumero_M == "3") {
    $rang_M = "Moderateur";
}

if ($rangnumero_M == "4") {
    $rang_M = "Administrateur";
}

if ($email_M == null) {
  $email_M = 'Non renseigner';
}


et ceci transformé en SWITCH

switch($rangnumero_M){
case "1" :
  $rang_M = "Membre";
 break;
case "2" :
  $rang_M = "Vip";
 break;
case "3" :
  $rang_M = "Moderateur";
 break;
case "4" :
  $rang_M = "Administrateur";
 break;
default:
 echo "rangnumero_M inconnu";
 break;
}
if ($email_M == null) {
  $email_M = 'Non renseigner';
}

?>


Si malgré ça tu as toujours des messages d'erreurs...donne les nous exactement... en général ils indiquent les lignes concernés et le type d'erreur......
0