Problème de retour menu

Eléphant du PHP | 70 Messages

26 févr. 2009, 10:23

Bonjour a tous, alors voila mon probleme est le suivant

Dans mon application j'ai une page d'acceuil pour que les futurs differents utilisateur de mon application puisse s'identifier.
Une fois qu'il click sur connexion, ils sont rediriger vers un menu different selon leur niveau d'employer. Ce menu est enfete ni plu ni moin que ma page d'acceuil dont j'ai changer le contenu.

Mon problème est que lorsqu'un utilisateur click sur un lien href "retour menu" je ne peu que le rediriger vers l'acceuil et non vers son menu, ce qui l'oblige a ce reconnecter, chose qui devient tres vite chainte...

ps: c'est pas evident a expliquer donc si vous voulez plus de precision hesitez pas a me poser des questions
La devise du vrai Geek ==> Plus tu dors moins t'es fort !!

Mammouth du PHP | 991 Messages

26 févr. 2009, 11:43

tu utilise les sessions ?

On peut imaginer qu'a la connection , tu définisse : $_SESSION['rang'] = "JeSuisLeBigBoss"; qui changera bien sur en fonction des users.

Ensuite
switch($_SESSION['rang'])
{

case "JeSuisLeBigBoss";

// Action

break;
default:

}
Voila mon humble avis
DevOps, Symfony4, Hoa

Eléphant du PHP | 70 Messages

26 févr. 2009, 12:00

euh non je n'utilise pas les sessions
voici mon script qui gere sa si tu veux
<?php 

    session_start();
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
	<head>
		<meta http-equiv="content-type" content="text/html; charset=iso-8859-1" /> 	
        <meta name="generator" content="PSPad editor, www.pspad.com">
		<link rel="stylesheet" media="screen" type="text/css" title="css" href="style_fx.css" />
		<title>Acceuil</title>
	</head>
	<body>
		<table style="text-align: left; width: 100%;" cellpadding="2" cellspacing="2">
		    <tbody>
		        <tr>
					<td style="height: 300px; width: 347px;"><img src="logo_maif.jpg"></td>
			        <td><center><font face="arial" color='#01796F' size="+5"><h1><b><u>Gestion des Incidents éditiques</u></b></h1></font></center></td>
			    </tr>
			</tbody>
		</table>
	    <br>
		<br>
	    <hr/ color='#01796F'>
	    <hr/ color='#01796F'>
		<br>
	    <?php
			require_once ("connexion.php"); // Ouverture de la base de donnees
			mysql_select_db($database,$db);
		    if($_POST['num_employe'] != "") //Si la zone de texte n'est pas vide
		    {        			
				$num_employe=$_POST['num_employe'];
		        $sql = "SELECT level_employe, Prenom FROM employer WHERE NumEmploye='$num_employe'"; //Requete permettant de savoir si la valeur est dans la base de donnees
		        $req = mysql_query($sql) or die('Erreur SQL! '.$sql.''.mysql_error()); // en cas d'erreure
		        $data = mysql_fetch_assoc($req); //les resultats de la requete est dans une variable 
		        if($data['level_employe']==null) // Si la requete ne retourne rien
		        {
					$valide=5; // La variable valide prend la valeur 5
		        }
		        elseif ($data['level_employe']== 1) //Si la requete retourne "admin"
		        {
		            $valide=1; // La variable valide prend la valeur 1   
		            $_SESSION['num_employe'] = $num_employe; // La valeur est sauvegarder dans une variable de session
		        }
		        elseif ($data['level_employe']== 2) //Si la requete retourne "admin"
		        {
		            $valide=2; // La variable valide prend la valeur 2    
		            $_SESSION['num_employe'] = $num_employe; // La valeur est sauvegarder dans une variable de session
		        }
		        elseif ($data['level_employe']== 3) //Si la requete retourne "admin"
		        {
		            $valide=3; // La variable valide prend la valeur 3    
		            $_SESSION['num_employe'] = $num_employe; // La valeur est sauvegarder dans une variable de session
		        }
		        elseif ($data['level_employe']== 4) //Si la requete retourne "admin"
		        {
		            $valide=4; // La variable valide prend la valeur 4   
		            $_SESSION['num_employe'] = $num_employe; // La valeur est sauvegarder dans une variable de session
		        }
				elseif ($data['level_employe']== 6) //Si la requete retourne "admin"
		        {
		            $valide=6; // La variable valide prend la valeur 4   
		            $_SESSION['num_employe'] = $num_employe; // La valeur est sauvegarder dans une variable de session
		        }
		        mysql_close();  //fermeture de la base de donnees
		    }
            if ($valide==1) 
			{      
				echo 'Bienvenue '.$data['Prenom'];
				echo '<table style="text-align: left; width: 100%; height: 32px;" cellpadding="2" cellspacing="2">';
					echo'<tbody>';
						echo'<tr>';
							echo'<td style="width: 100%;"><center>';
								include ("Centre/CentreManager.php");
							echo'</center></td>';
						echo'</tr>';
						echo'<tr>';
							include ("connexionok.php"); //Si valide = 1 alors afficher  dans la partie du menu la page "connexionok.php"
						echo'</tr>';
					echo'</tbody>';
				echo '</table>';
			}      
			elseif ($valide==2) 
			{
				echo 'Bienvenue '.$data['Prenom'];
				echo '<table style="text-align: left; width: 100%; height: 32px;" cellpadding="2" cellspacing="2">';
					echo'<tbody>';
						echo'<tr>';
							echo'<td style="width: 100%;">';
								echo'<center>';
									include ("Centre/CentreExploitant.php");
								echo'</center>';	
							echo'</td>';
						echo'</tr>';
						echo'<tr>';
							include ("connexionok.php"); //Si valide = 1 alors afficher  dans la partie du menu la page "connexionok.php"
						echo'</tr>';
					echo'</tbody>';
				echo '</table>';
			}
			elseif ($valide==3) 
			{
				echo 'Bienvenue '.$data['Prenom'];
				echo '<table style="text-align: left; width: 100%; height: 32px;" cellpadding="2" cellspacing="2">';
					echo'<tbody>';
						echo'<tr>';
							echo'<td style="width: 100%;">';
								echo'<center>';
									include ("Centre/CentreOperateur.php");
								echo'</center>';
							echo'</td>';
						echo'</tr>';
						echo'<tr>';
							include ("connexionok.php"); //Si valide = 1 alors afficher  dans la partie du menu la page "connexionok.php"
						echo'</tr>';
					echo'</tbody>';
				echo '</table>';
			}
			elseif ($valide==4) 
			{
				echo 'Bienvenue '.$data['Prenom'];
				echo '<table style="text-align: left; width: 100%; height: 32px;" cellpadding="2" cellspacing="2">';
					echo'<tbody>';
						echo'<tr>';
							echo'<td style="width: 100%;">';
								echo'<center>';
									include ("Centre/CentreAdministration.php");
								echo'</center>';
							echo'</td>';
						echo'</tr>';
						echo'<tr>';
							include ("connexionok.php"); //Si valide = 1 alors afficher  dans la partie du menu la page "connexionok.php"
						echo'</tr>';
					echo'</tbody>';
				echo '</table>';
			}
			elseif ($valide==5)//Si valeure = 5 c'est a dire, que la valeure n'a pas ete retrouve dans la base de donnees
			{    
				include ("connexion.php"); // Sinon rester sur cette meme partie (connexion.php)				
				include ("connexionpasok.php"); // alors afficher  dans la partie du menu la page "connexionpasok.php"
            }
			elseif ($valide==6)//Si la valeur = 0 ==> SuperUser
			{
				echo 'Bienvenue '.$data['Prenom'];
				echo '<table style="text-align: left; width: 100%; height: 32px;" cellpadding="2" cellspacing="2">';
					echo'<tbody>';
						echo'<tr>';
							echo'<td style="width: 100%;">';
								echo'<center>';
									include ("Centre/CentreSuperUser.php");
								echo'</center>';	
							echo'</td>';
						echo'</tr>';
						echo'<tr>';
							include ("connexionok.php"); //Si valide = 1 alors afficher  dans la partie du menu la page "connexionok.php"
						echo'</tr>';
					echo'</tbody>';
				echo'</table>';
			}
			else
			{
				include ("authentification.php"); // Sinon rester sur cette meme partie (connexion.php)
				echo'<div id="centre">';
				include ("Centre/centregeneral.php"); // Sinon on affiche au centre le texte correspondant a aucune connexion
				echo'</div>';
			}
		?>   
    </body>
</html>
    
La devise du vrai Geek ==> Plus tu dors moins t'es fort !!

Mammouth du PHP | 991 Messages

26 févr. 2009, 12:02

euh non je n'utilise pas les sessions
voici mon script qui gere sa si tu veux
<?php 

    session_start();
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
	<head>
		<meta http-equiv="content-type" content="text/html; charset=iso-8859-1" /> 	
        <meta name="generator" content="PSPad editor, www.pspad.com">
		<link rel="stylesheet" media="screen" type="text/css" title="css" href="style_fx.css" />
		<title>Acceuil</title>
	</head>
	<body>
		<table style="text-align: left; width: 100%;" cellpadding="2" cellspacing="2">
		    <tbody>
		        <tr>
					<td style="height: 300px; width: 347px;"><img src="logo_maif.jpg"></td>
			        <td><center><font face="arial" color='#01796F' size="+5"><h1><b><u>Gestion des Incidents éditiques</u></b></h1></font></center></td>
			    </tr>
			</tbody>
		</table>
	    <br>
		<br>
	    <hr/ color='#01796F'>
	    <hr/ color='#01796F'>
		<br>
	    <?php
			require_once ("connexion.php"); // Ouverture de la base de donnees
			mysql_select_db($database,$db);
		    if($_POST['num_employe'] != "") //Si la zone de texte n'est pas vide
		    {        			
				$num_employe=$_POST['num_employe'];
		        $sql = "SELECT level_employe, Prenom FROM employer WHERE NumEmploye='$num_employe'"; //Requete permettant de savoir si la valeur est dans la base de donnees
		        $req = mysql_query($sql) or die('Erreur SQL! '.$sql.''.mysql_error()); // en cas d'erreure
		        $data = mysql_fetch_assoc($req); //les resultats de la requete est dans une variable 
		        if($data['level_employe']==null) // Si la requete ne retourne rien
		        {
					$valide=5; // La variable valide prend la valeur 5
		        }
		        elseif ($data['level_employe']== 1) //Si la requete retourne "admin"
		        {
		            $valide=1; // La variable valide prend la valeur 1   
		            $_SESSION['num_employe'] = $num_employe; // La valeur est sauvegarder dans une variable de session
		        }
		        elseif ($data['level_employe']== 2) //Si la requete retourne "admin"
		        {
		            $valide=2; // La variable valide prend la valeur 2    
		            $_SESSION['num_employe'] = $num_employe; // La valeur est sauvegarder dans une variable de session
		        }
		        elseif ($data['level_employe']== 3) //Si la requete retourne "admin"
		        {
		            $valide=3; // La variable valide prend la valeur 3    
		            $_SESSION['num_employe'] = $num_employe; // La valeur est sauvegarder dans une variable de session
		        }
		        elseif ($data['level_employe']== 4) //Si la requete retourne "admin"
		        {
		            $valide=4; // La variable valide prend la valeur 4   
		            $_SESSION['num_employe'] = $num_employe; // La valeur est sauvegarder dans une variable de session
		        }
				elseif ($data['level_employe']== 6) //Si la requete retourne "admin"
		        {
		            $valide=6; // La variable valide prend la valeur 4   
		            $_SESSION['num_employe'] = $num_employe; // La valeur est sauvegarder dans une variable de session
		        }
		        mysql_close();  //fermeture de la base de donnees
		    }
            if ($valide==1) 
			{      
				echo 'Bienvenue '.$data['Prenom'];
				echo '<table style="text-align: left; width: 100%; height: 32px;" cellpadding="2" cellspacing="2">';
					echo'<tbody>';
						echo'<tr>';
							echo'<td style="width: 100%;"><center>';
								include ("Centre/CentreManager.php");
							echo'</center></td>';
						echo'</tr>';
						echo'<tr>';
							include ("connexionok.php"); //Si valide = 1 alors afficher  dans la partie du menu la page "connexionok.php"
						echo'</tr>';
					echo'</tbody>';
				echo '</table>';
			}      
			elseif ($valide==2) 
			{
				echo 'Bienvenue '.$data['Prenom'];
				echo '<table style="text-align: left; width: 100%; height: 32px;" cellpadding="2" cellspacing="2">';
					echo'<tbody>';
						echo'<tr>';
							echo'<td style="width: 100%;">';
								echo'<center>';
									include ("Centre/CentreExploitant.php");
								echo'</center>';	
							echo'</td>';
						echo'</tr>';
						echo'<tr>';
							include ("connexionok.php"); //Si valide = 1 alors afficher  dans la partie du menu la page "connexionok.php"
						echo'</tr>';
					echo'</tbody>';
				echo '</table>';
			}
			elseif ($valide==3) 
			{
				echo 'Bienvenue '.$data['Prenom'];
				echo '<table style="text-align: left; width: 100%; height: 32px;" cellpadding="2" cellspacing="2">';
					echo'<tbody>';
						echo'<tr>';
							echo'<td style="width: 100%;">';
								echo'<center>';
									include ("Centre/CentreOperateur.php");
								echo'</center>';
							echo'</td>';
						echo'</tr>';
						echo'<tr>';
							include ("connexionok.php"); //Si valide = 1 alors afficher  dans la partie du menu la page "connexionok.php"
						echo'</tr>';
					echo'</tbody>';
				echo '</table>';
			}
			elseif ($valide==4) 
			{
				echo 'Bienvenue '.$data['Prenom'];
				echo '<table style="text-align: left; width: 100%; height: 32px;" cellpadding="2" cellspacing="2">';
					echo'<tbody>';
						echo'<tr>';
							echo'<td style="width: 100%;">';
								echo'<center>';
									include ("Centre/CentreAdministration.php");
								echo'</center>';
							echo'</td>';
						echo'</tr>';
						echo'<tr>';
							include ("connexionok.php"); //Si valide = 1 alors afficher  dans la partie du menu la page "connexionok.php"
						echo'</tr>';
					echo'</tbody>';
				echo '</table>';
			}
			elseif ($valide==5)//Si valeure = 5 c'est a dire, que la valeure n'a pas ete retrouve dans la base de donnees
			{    
				include ("connexion.php"); // Sinon rester sur cette meme partie (connexion.php)				
				include ("connexionpasok.php"); // alors afficher  dans la partie du menu la page "connexionpasok.php"
            }
			elseif ($valide==6)//Si la valeur = 0 ==> SuperUser
			{
				echo 'Bienvenue '.$data['Prenom'];
				echo '<table style="text-align: left; width: 100%; height: 32px;" cellpadding="2" cellspacing="2">';
					echo'<tbody>';
						echo'<tr>';
							echo'<td style="width: 100%;">';
								echo'<center>';
									include ("Centre/CentreSuperUser.php");
								echo'</center>';	
							echo'</td>';
						echo'</tr>';
						echo'<tr>';
							include ("connexionok.php"); //Si valide = 1 alors afficher  dans la partie du menu la page "connexionok.php"
						echo'</tr>';
					echo'</tbody>';
				echo'</table>';
			}
			else
			{
				include ("authentification.php"); // Sinon rester sur cette meme partie (connexion.php)
				echo'<div id="centre">';
				include ("Centre/centregeneral.php"); // Sinon on affiche au centre le texte correspondant a aucune connexion
				echo'</div>';
			}
		?>   
    </body>
</html>
    
Avec ton session_start() tu utilises les sessions ;)
Essaye d'integrer mon , pas sur que ce soit la solution :)
DevOps, Symfony4, Hoa

Eléphant du PHP | 70 Messages

26 févr. 2009, 12:13

ah oui lol javais zapper mon session_start() ^^

ok jvai voir si ta solution peu marcher
merci
La devise du vrai Geek ==> Plus tu dors moins t'es fort !!