Soucis de if dans session (php)

oljanssen -  
Alain_42 Messages postés 5413 Statut Membre -
Bonjour,


Je souhaiterais créer des niveaux d'internaute sur mon site (user et admin)
User = 0
Admin =1
En gros dans ma base de données, j'ai enregistré toutes les données (login nom, password, rang, ...)


Je souhaiterais faire en sorte que
SI le rang de l'user=1, afficher un select avec le nom de TOUS les membres ayant un rang=0, sinon, afficher un input en type=hidden (pour que l'user ne sache envoyé un message qu'a une personne définie dans la base de données(responsable))


savez vous m'aidé sur base de mon code?



Merci pour tout


<? if  ($_SESSION['user']['rang']=='1') 
       { 
 echo '<select><option></option></select>'; 
 } 
 else{ ?> 
        <b>Adressé à: </b><?php echo $_SESSION['user']['responsable']; ?> <br> 
         <input type="hidden" name="pour" value="<?php echo $_SESSION['user']['responsable']; ?>"><? } ?> 

4 réponses

Melooo Messages postés 1476 Statut Membre 84
 
Salut,
Alors en faite tu voudrais qu'a chaque connexion tu affiches le nom de tous les users si c'est un admin qui se connecte, et si c'est un user qui se connecte alors il n'y à rien d'afficher ?
0
oljanssen
 
Exactement :)
0
Melooo Messages postés 1476 Statut Membre 84
 
Vérifier quel type d'internaute se connecte (avec une requête SQL)
il te faut donc utiliser mysql_num_rows (permet de compter le nombre de résultat que dégage une requête)
prenons l'exemple de la requête Admin :
$query = 'SELECT * FROM admin WHERE pass = '".$pass."' AND login = '".$user."'";
$exec = mysql_query($query);
$rows = mysql_num_rows($exec);
if($rows >= 1){
// alors tu lances la requête select pour afficher les users
} else
{
// rien du tout
}
0
oljanssen
 
Top, merci!

Et sans faire de requète?! est ce que c'est possible? La session étant déjà lancée...?
0
Melooo Messages postés 1476 Statut Membre 84
 
Tu es obligé de faire une requête pour connaitre le type d'utilisateur qui se connecte.
0
Alain_42 Messages postés 5413 Statut Membre 894
 
essayes comme cela (en adaptant à ta_table bien sur)

<?php //attention utilises le tag long pour php

 if  ($_SESSION['user']['rang']=='1') 
       { 
	  $sql= "SELECT  nom,email FROM ta_table WHERE rang = '0' ";
	  $result=mysql_query);
	  //affichage liste
	echo '<select name="pour">';
	  while($row=mysql_fetch_assoc($result)){
		echo '<option value="'.$row['email'].'">'.$row['nom'].'</option>';
	  
	  }
	  echo '</select>';
  
 } 
 elseif  ($_SESSION['user']['rang']=='0'){ 
	$sql= "SELECT  nom,email FROM ta_table WHERE rang = 'responsable' ";
	  $result=mysql_query);
	  $row=mysql_fetch_assoc($result);
        echo '<b>Adressé à: </b> '.$row['nom'].'<br />';
			echo '<input type="hidden" name="pour" value="'.$row['email'].'" />';
  }        

?>
0