Pb récupération valeur login pour acces page

Résolu/Fermé
liadea Messages postés 127 Date d'inscription vendredi 19 février 2010 Statut Membre Dernière intervention 30 juin 2010 - 9 mars 2010 à 12:39
liadea Messages postés 127 Date d'inscription vendredi 19 février 2010 Statut Membre Dernière intervention 30 juin 2010 - 19 mars 2010 à 08:45
Bonjour,

Après plusieurs tests je me permets de poster ce message en espérant que l'un d'entre vous aura une idée fabuleuse !!

J'explique :

J'ai un formulaire de connexion avec login et pwd que je récupère dans une table sql

après vérification redirection sur une page d'accueil sur laquelle il y a 2 liens vers des pages

sur un de ces liens je souhaiterai faire une vérification de la valeur du login :
si il s'agit de 'Admin' on à le droit de faire des modifications ou des suppressions
si il s'agit de n'importe qui d'autre, je souhaiterai que ces boutons ne soient pas accessible.

et bien sur éviter de refaire 2 fois la même page sans les boutons.

Est ce possible ?

Merci par avance.
A voir également:

15 réponses

giheller Messages postés 1875 Date d'inscription dimanche 14 juin 2009 Statut Membre Dernière intervention 3 février 2024 142
9 mars 2010 à 13:35
bonjour,

le formuliare peut renvoyer sur la même page avec un indicateur qui permet de distinguer le 1er passsage ou le second.
0
liadea Messages postés 127 Date d'inscription vendredi 19 février 2010 Statut Membre Dernière intervention 30 juin 2010
9 mars 2010 à 13:42
C'est possible d'avoir un peu plus d'explications ?
0
giheller Messages postés 1875 Date d'inscription dimanche 14 juin 2009 Statut Membre Dernière intervention 3 février 2024 142
9 mars 2010 à 13:52
voilà
<?php
// ce script s'appelle formulaire.php
$passage=1;
if (isset($_POST)) {
$passage = $_POST['passage'];
}
if ($passage=1){
echo "<form name=formulaire action='formulaire.php' method='POST'>";
//on met ici les trucs du formulaire

echo "<input type='submit' value='envoi'>";
echo "<input type='hidden' name='passage' value=2>";
echo "</form>";
}
else {
echo "second passage";
}
?>


0
liadea Messages postés 127 Date d'inscription vendredi 19 février 2010 Statut Membre Dernière intervention 30 juin 2010
9 mars 2010 à 13:58
Merci
j'suis désolé mais je vois pas le truc du passage 1 ou 2 ?!
je me suis peut être mal expliquée.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
giheller Messages postés 1875 Date d'inscription dimanche 14 juin 2009 Statut Membre Dernière intervention 3 février 2024 142
9 mars 2010 à 14:03
désolé j'avais pas bien saisi le premier message

dans la page, il faut tester si par exemple profil='admin'
et là on affiche ou pas ce que l'on veut
ça donne quelqe chose comme ça
<?php
$profil= $_SESSION['profil'];
//echo "profil ".$profil;
if ($profil!='0') {
// menu normal sans bouton
}
else {
//menu administrateur avec bouton
}
?>
0
liadea Messages postés 127 Date d'inscription vendredi 19 février 2010 Statut Membre Dernière intervention 30 juin 2010
9 mars 2010 à 14:07
Pas de mal merci de répondre !
Bah en fait c'est pas au niveau du menu d'accueil que ça pose problème mais à la page suivante.
Sur le menu d'accueil j'ai 2 liens vers 2 pages
un lien me renvoi vers une page ou l'on peut faire des modifications , des ajouts et des suppressions et je souhaiterai que ces options ne soient disponibles que si le login a été identifié comme Admin.
Sinon je n'affiche pas les boutons.

c'est clair ou pas du tout
en fait , récupérer la valeur du login mais 2 pages après.
0
giheller Messages postés 1875 Date d'inscription dimanche 14 juin 2009 Statut Membre Dernière intervention 3 février 2024 142
9 mars 2010 à 14:11
on peut alors garder la valeur du login dans une variable de session
$_SESSION['login'] = $leprofil;

cela on la récupère où l'on veut en gérant avec session_start();
0
liadea Messages postés 127 Date d'inscription vendredi 19 février 2010 Statut Membre Dernière intervention 30 juin 2010
9 mars 2010 à 14:16
J'ajoute donc la fonction "session_start()" dans la page ou je veux tester le login ?
0
giheller Messages postés 1875 Date d'inscription dimanche 14 juin 2009 Statut Membre Dernière intervention 3 février 2024 142
9 mars 2010 à 14:19
dans les pages où on a besoin de $_SESSION
0
liadea Messages postés 127 Date d'inscription vendredi 19 février 2010 Statut Membre Dernière intervention 30 juin 2010
9 mars 2010 à 16:18
MERCI monsieur !!
0
liadea Messages postés 127 Date d'inscription vendredi 19 février 2010 Statut Membre Dernière intervention 30 juin 2010
16 mars 2010 à 12:18
Bonjour,
je me permets de revenir sur ce sujet car en fait oui faire appel à la méthode session_start ça fonctionne pour faire un echo $_SESSION['login'];
Cependant j'ai besoin de la valeur $_SESSION['login'] dans une seconde page mais pas de l'affichage .
Je souhaiterai savoir la valeur saisie dans la page loing.php et faire un test sur une autre page pour faire différentes instructions.

<CODE> :

LOGIN.PHP

session_start();

$sql="SELECT login,pwd FROM admin";
$resu=mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error());

if ($data= mysql_fetch_array($resu)){
$login=$data['login'];
$pwd=$data['pwd'];

if ((isset($_POST['login']))and(isset($_POST['password']))){
$log=$_POST['login'];
$pw=$_POST['password'];

if(($log==$login)and($pw==$pwd)){
$_SESSION['login']=$log;
$_SESSION['password']=$pw;
header('Location:accueil.php');
}else{

?>
<script type="text/javascript">alert("Mdp incorrect pour Admin !!")</script>
<?php

}if(($log!=$login)and($pw!=$pwd)){
$_SESSION['login']=$log;
$_SESSION['password']=$pw;
header ('location: accueil.php');
}
}
}


ACCUEIL.PHP:
<p>BONJOUR,
<?php
session_start();
echo $_SESSION['login'];

?>
<p>Nous sommes le...

Sur cette page il y a 2 liens vers 2 autres pages :
<td style="font-size:17px" width="50%"><center><a href="ping.php">Notifications</a></center></td>
</tr>
<tr>
<br/><br/>
<td style="font-size:17px" width="50%"><center><a href="ua.php">Liste des UA</a></center></td>

Lorsque l'on clique sur le second lien on arrive sur une nouvelle page, et c'est sur cette page que je voudrais détecter la valeur du login

UA.PHP :


if ($_SESSION['login']!='Admin'){
La le login est rentré en dur et il me faudrait la variable saisie dans la page login mais je vois pas comment faire !
Si c'est Admin j'ai le droit à des modifs sinon non !

?>
<td><input type="button" name="modifier" value="Modifier" id="modifier" onClick="modifierUA('<?php echo $tab['AdresseIP']; ?>');" style="font-size:12px" disabled="true"/></td>
<td><input type="button" name="supprimer" value="Supprimer" id="supprimer" onClick="supprimerUA('<?php echo $tab['AdresseIP'];?>');" style="font-size:12px" disabled="true"/></td>

<?php }else{?>

<td><input type="button" name="modifier" value="Modifier" id="modifier" onClick="modifierUA('<?php echo $tab['AdresseIP']; ?>');" style="font-size:12px"/></td>
<td><input type="button" name="supprimer" value="Supprimer" id="supprimer" onClick="supprimerUA('<?php echo $tab['AdresseIP'];?>');" style="font-size:12px"/></td>

Merci pour vos conseils car la je suis un peu perdue !!
0
liadea Messages postés 127 Date d'inscription vendredi 19 février 2010 Statut Membre Dernière intervention 30 juin 2010
16 mars 2010 à 15:17
un p'tit UP SVP !!
0
giheller Messages postés 1875 Date d'inscription dimanche 14 juin 2009 Statut Membre Dernière intervention 3 février 2024 142
16 mars 2010 à 17:58
Bonsoir,

l'affichage c'est avec un echo.
enlevez l'echo et trvaillez avec le contenu de cette varaible

exemple
if ($_SESSION['login']== etc

0
liadea Messages postés 127 Date d'inscription vendredi 19 février 2010 Statut Membre Dernière intervention 30 juin 2010
17 mars 2010 à 08:10
Bonjour,

Je l'ai fait cette méthode :
UA.PHP :

if ($_SESSION['login']!='Admin'){

sauf que je ne voudrais pas rentrer la valeur du login en dur , ici 'Admin'.
Je voudrais pouvoir récupérer la valeur saisie dans le formulaire d'authentification, login.php
0
giheller Messages postés 1875 Date d'inscription dimanche 14 juin 2009 Statut Membre Dernière intervention 3 février 2024 142
17 mars 2010 à 17:37
bonsoir,
si dans la variable de session vous mettez le login et que vous testez ensuite le login et la variable session elles donneront toujours égalité.
0
liadea Messages postés 127 Date d'inscription vendredi 19 février 2010 Statut Membre Dernière intervention 30 juin 2010
18 mars 2010 à 08:02
Auriez - vous une solution à me proposer parce que je ne vois pas vraiment comment faire ?

Merci
0
giheller Messages postés 1875 Date d'inscription dimanche 14 juin 2009 Statut Membre Dernière intervention 3 février 2024 142
Modifié par giheller le 18/03/2010 à 17:42
Bonsoir,

Il faut donc trouver une solution pour connaitre la droits à donner à la personne qui se connecte.
je vous suggère d'ajouter un profile dans la table des utilisateurs
avec exemple :
administrateur profil = 0
gestionnaire profil = 1
visteur profil = 2

à la connexion vous vérifiez que le mot de passe est correct et vous stockez en session la valeur du profil.
ensuite
vous pouvez faire :

switch ($_SESSION['profil'])
{
case 1:
//afficher les boutons administrateur
break;
case 2 :
// afficher les boutons gestionnaires
break;
case 3 :
// afficher les boutons visteurs
break;
default :
//afficher les boutons utilistaeurs
break;
}



Pour qu'il ait le moins de mécontents possible il faut toujours taper sur les mêmes.
(comme vous l'avez reconnu : proverbe shadocks)
0
liadea Messages postés 127 Date d'inscription vendredi 19 février 2010 Statut Membre Dernière intervention 30 juin 2010
18 mars 2010 à 20:13
Merci j'essaie cette méthode dès demain matin.
Encore merci pour votre aide
0
liadea Messages postés 127 Date d'inscription vendredi 19 février 2010 Statut Membre Dernière intervention 30 juin 2010
19 mars 2010 à 08:45
Bonjour,
Merci pour le conseils, j'ai pas vraiment fait pareil mais ça fonctionne tout aussi bien !

Encore un Grand Merci

Très bonne journée !!
0