jenny50 | J'ai déjà fait un poste pour cette page qui bloque et m'enquiquine. La voici en entier vous aller peut-être mieux comprendre. Actuellement si j'execute ma première requete je n'ai qu'une ligne de résultats qui s'affiche donc il ne prend en compte que les droits d'un groupe alors que le user appartient à 2 groupes. C'est pour cette raison que j'ai essayer de faire une boucle. Mais sans succès. En cherchant sur le web j'ai trouvé ce qu'il y a au-dessus... Je me dis que c'est peut être une solution, mais je n'arrive pas à l'éxécuter pour moi (je débute et galère pas mal)
Code :
- <?php
- session_start();
- //connexion au serveur
- require('adm_fonctions.php');
- $conn = g_connect();
- $webmaster="";
- //savoir d'où on revient
- if (isset($HTTP_GET_VARS['act']))
- {
- $wlog=$HTTP_GET_VARS['act'];
- }
- else
- {
- $wlog='';
- }
- //vérification du login et mot de passe
- if ($wlog=='log')
- {
- $wlogin='';
- $wpass='';
- if(isset($HTTP_POST_VARS['uti_login']))
- {
- $wlogin=$HTTP_POST_VARS['uti_login'];
- }
- if(isset($HTTP_POST_VARS['uti_pass']))
- {
- $wpass=$HTTP_POST_VARS['uti_pass'];
- }
- $sql = " SELECT utilisateurs.uti_cle, utilisateurs.uti_nom, utilisateurs.uti_prenom, grputi.grp_cle, grp_vis, grp_adm, grp_dir, grp_bod, grp_arc, grp_asc, grp_sob, grp_sca, grp_maf, grp_vir, grp_fle, grp_ale, grp_arg, grp_val, grp_qsca FROM liengrp INNER JOIN utilisateurs ON utilisateurs.uti_cle=liengrp.uti_cle INNER JOIN grputi ON grputi.grp_cle=liengrp.grp_cle WHERE uti_login='".$wlogin."' and uti_pass='".$wpass."' ";
- $qry = pg_query($conn, $sql);
- //$qry2 = pg_query($conn, $sql);
- $individu = pg_fetch_object($qry);
- //si la requete est vide alors mot de passe ou login incorrect
- if (!$individu)
- {
- header("Location:adm_login.php?m=1" );
- exit();
- }
- //sinon on ouvre la session avec ses caractéristiques
- else
- {
- //while ($individu = pg_fetch_object($qry2))
- //{
- $_SESSION['ses_nom']=$individu->uti_nom;
- $_SESSION['ses_prenom']=$individu->uti_prenom;
- $_SESSION['ses_grp_cle']=$individu->grp_cle;
- $_SESSION['ses_grp_vis']=$individu->grp_vis;
- $_SESSION['ses_grp_adm']=$individu->grp_adm;
- $_SESSION['ses_grp_dir']=$individu->grp_dir;
- $_SESSION['ses_grp_bod']=$individu->grp_bod;
- $_SESSION['ses_grp_arc']=$individu->grp_arc;
- $_SESSION['ses_grp_asc']=$individu->grp_asc;
- $_SESSION['ses_grp_sob']=$individu->grp_sob;
- $_SESSION['ses_grp_sca']=$individu->grp_sca;
- $_SESSION['ses_grp_maf']=$individu->grp_maf;
- $_SESSION['ses_grp_vir']=$individu->grp_vir;
- $_SESSION['ses_grp_fle']=$individu->grp_fle;
- $_SESSION['ses_grp_ale']=$individu->grp_ale;
- $_SESSION['ses_grp_arg']=$individu->grp_arg;
- $_SESSION['ses_grp_val']=$individu->grp_val;
- $_SESSION['ses_grp_qsca']=$individu->grp_qsca;
- $_SESSION['ses_log']='oui';
- //echo '<tr><td>'.$individu->grp_adm.''.$individu->grp_vis.''.$individu->grp_sca.'</td></tr><br>';
- //}
- }
- }
- //verifie la connexion
- else
- {
- if (!verif_connect)
- {
- exit();
- }
- }
- $sql = " SELECT cat_cle, cat_lib FROM categorie ";
- $qry = pg_query($conn, $sql);
- $result = pg_fetch_object($qry);
- ?>
- <html>
- <head>
- <title>Espace dédié à l'administrateur</title>
- <!-------------------------- Fichiers liés pour aérer code -->
- <link href="../css/style_admin.css" rel="stylesheet" type="text/css">
- <link href="../css/style.css" rel="stylesheet" type="text/css">
- <script type="text/javascript" src="../css/javascript.js"></script>
- </head>
- <body>
- <table width="90%" align="center" height="100%" border="1" bordercolor="#CCCCCC" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td>
- <!-------------------------- Tableau pour l'en-tete -->
- <table width="100%" border="0" cellpadding="0" cellspacing="0" bgcolor="#333399">
- <tr>
- <td>
- <a href="../public/accueil.php">
- <img src="../img/logo_net.jpg" alt="Accueil" border="0">
- </a>
- </td>
- </tr>
- <tr>
- <td width="33%" align="center">
- <font color="#CCCCCC" face="Arial, Helvetica, sans-serif" size="2">Bienvenue <?=$_SESSION['ses_prenom'];?> <?=$_SESSION['ses_nom'];?></font>
- </td>
- <td width="33%" align="center">
- <font color="#CCCCCC" face="Arial, Helvetica, sans-serif" size="2"><strong>ESPACE ADMINISTRATEUR </strong></font>
- </td>
- <td width="33%" align="center">
- <?php echo "<a href=\"adm_login.php?m=3\"><img src=\"../img/deconnexion.jpg\" border=\"0\" alt=\"déconnexion\"></a>" ?>
- </td>
- </tr>
- <tr>
- <td height="5"></td>
- </tr>
- </table>
- <table width="100%" height="79%" border="0" cellpadding="0" cellspacing="0" bgcolor="#CCCCCC" bordercolor="#333399">
- <tr valign="top">
- <td width="25%">
- <!-------------------------- Tableau pour agir -->
- <table width="80%" align="center" bgcolor="#CCCCCC">
- <?
- if ($_SESSION['ses_grp_adm']==1)
- {
- ?>
- <tr>
- <td align="left" id="rubrique">Base de données</td>
- </tr>
- <tr>
- <td align="left" id="sousrubrique">
- <a href="adm_listgrp.php" target="contenu">Groupes</a><br>
- <a href="adm_listliengrp.php" target="contenu">Appartenance à 1 groupe</a><br>
- <a href="adm_listmarq.php" target="contenu">Marques</a><br>
- <a href="adm_listfil.php" target="contenu">Filiales</a><br>
- <a href="adm_listconc.php" target="contenu">Concessions</a><br>
- <a href="adm_listfonc.php" target="contenu">Fonctions</a><br>
- <a href="adm_listlienfonc.php" target="contenu">Multi-fonctions</a><br>
- <a href="adm_listuti.php" target="contenu">Utilisateurs</a><br>
- <a href="adm_listcat.php" target="contenu">Catégorie de documents</a><br>
- <a href="adm_listscat.php" target="contenu">Sous Catégorie de documents</a><br>
- <a href="adm_listflash.php" target="contenu">Flash Infos</a><br>
- <a href="adm_listcand.php" target="contenu">Candidatures</a>
- </td>
- </tr>
- <tr>
- <td align="left" id="rubrique">Messages</a></td>
- </tr>
- <tr>
- <td align="left" id="sousrubrique">
- <a href="adm_listmess.php" target="contenu">Voir la liste</a><br>
- <a href="adm_mess.php?act=c" target="contenu">Créer un message</a>
- </td>
- </tr>
- <tr>
- <td align="left" id="rubrique">Bodemer Infos</td>
- </tr>
- <?
- $sql2 = $sql . " WHERE cat_cle < 8 ORDER BY cat_lib DESC ";
- $qry2 = pg_query($conn, $sql2);
- while ($result = pg_fetch_object($qry2)){
- ?>
- <tr>
- <td align="left" id="sousrubrique">
- <a href="adm_listdoc.php?cat=<?=$result->cat_cle?>" target="contenu"><?=$result->cat_lib?></a>
- </td>
- </tr>
- <? } ?>
- <tr>
- <td align="left" id="rubrique">Système Management</td>
- </tr>
- <?
- $sql3 = $sql . " WHERE cat_cle > 7 and cat_cle < 19 ORDER BY cat_cle ASC ";
- $qry3 = pg_query($conn, $sql3);
- while ($result = pg_fetch_object($qry3)){
- ?>
- <tr>
- <td align="left" id="sousrubrique">
- <a href="adm_listdoc.php?cat=<?=$result->cat_cle?>" target="contenu"><?=$result->cat_lib?></a>
- </td>
- </tr>
- <? } ?>
- <?
- }
- if (($_SESSION['ses_grp_dir']==1)||($_SESSION['ses_grp_adm']==1))
- {
- ?>
- <tr>
- <td align="left" id="rubrique">Avancement des commandes</td>
- </tr>
- <tr>
- <td align="left" id="sousrubrique">
- <a href="adm_listcomd_srub.php" target="contenu">Sous-Rubrique</a><br>
- <a href="adm_listcomd_obj.php" target="contenu">Objectifs</a><br>
- <a href="adm_listcomd_donnee.php" target="contenu">Données</a><br>
- <? } ?>
- </td>
- </tr>
- <?php
- if ($_SESSION['ses_grp_sca']==1)
- {
- $sql = " SELECT cat_lib, scat_cle, scat_lib FROM souscategorie INNER JOIN categorie ON scat_categorie=cat_cle WHERE cat_cle=24 ORDER BY scat_cle ASC ";
- $qry = pg_query($conn,$sql);
- $oldcat = '';
- while ($result = pg_fetch_assoc($qry))
- {
- if ($oldcat != $result['cat_lib'])
- {
- if ( $oldcat != '' )
- {
- ?>
- <?
- }
- ?>
- <tr>
- <td align="left" id="rubrique"><?=$result['cat_lib']?></td>
- </tr>
- <tr>
- <td align="left" id="sousrubrique">
- <?
- }
- ?>
- <a href="adm_listeve.php?scat=<?=$result['scat_cle']?>" target="contenu"><?=$result['scat_lib']?></a><br>
- <?
- $oldcat = $result['cat_lib'];
- }
- ?>
- </td>
- </tr>
- <?
- }
- ?>
- </table>
- </td>
- <td width="75%" height="70%" bgcolor="#FFFFFF" align="center">
- <iframe src="vide.php" name="contenu" width="100%" height="100%" align="top" frameborder="0"></iframe>
- </td>
- </tr>
- </table>
- </td>
- </tr>
- </table>
- </body>
- </html>
|
AlphaZone a écrit :
Sinon si tu veux travailler tes permissions avec des opérateurs logiques, tu peux utiliser des valeurs en hexadécimal
|
Comment ça?
|