Connexion avec deux types d'utilisateur

omlaly - 19 févr. 2013 à 17:21
 omlaly - 22 févr. 2013 à 15:57
Bonjour

J'essaye de faire ma page de connexion PHP avec deux requêtes SQL pour gérer deux droits :
-administrateur (moi)
-membres

Je vous mets mon code où il y a deux variables (une pour l'administrateur et une pour les membres), le voici :
$query_connexion=mysql_query("SELECT user_pseudo FROM  user WHERE user_pseudo = '$identifiant_connexion' AND user_mdp = '$password_connexion_sha1'") or die('Erreur lors de la connexion des membres'.mysql_error()); // Envoie une requête à un serveur MySQL
$query_connexion_administrateur=mysql_query("SELECT user_administrateur FROM administrateur WHERE user_administrateur	 = '$identifiant_connexion' AND user_administrateur = '$password_connexion_sha1'") or die('Erreur lors de la connexion de l\'administrateur du site'.mysql_error()); // Envoie une requête à un serveur MySQL

// Test si l'utilisateur est inscrit - réponse positive
if(mysql_num_rows($query_connexion) == 1) { // mysql_num_rows retourne le nombre de lignes d'un résultat MySQL
echo "<center>Vous êtes authentifié. Merci, vous allez être redirigé dans 5 secondes.</center>";
echo '<meta http-equiv="refresh" content="5;URL=adresse.php">'; // Pour effectuer la redirection après 5 secondes - marche avec Google Chrome et Opera pas avec Mozilla Firefox
$_SESSION['Statut'] == 2;
}


// Test suivant pour voir si c'est l'administrateur (moi) qui s'est connecté - 
if(mysql_num_rows($query_connexion_administrateur) == 1) { // mysql_num_rows retourne le nombre de lignes d'un résultat MySQL
session_start();
$_SESSION['Statut'] == 1;
echo "<center>Vous êtes authentifié. Merci, vous allez être redirigé dans 5 secondes.</center>";
echo '<meta http-equiv="refresh" content="5;URL=adresse.php">'; // Pour effectuer la redirection après 5 secondes - marche avec Google Chrome et Opera pas avec Mozilla Firefox
}


Quand je m'authentifie en tant que membres, ça marche même si ça m'affiche
Vous n'êtes pas inscrit. Merci de vous inscrire
tandis que quand j'essaye de me connecter en tant d'administrateur, ça passe directement :
Vous n'êtes pas inscrit. Merci de vous inscrire.


J'ai essayé de faire
if(mysql_num_rows($query_connexion)||mysql_num_rows($query_connexion_administrateur)
mais il me met une erreur. En fait, je veux que c'est soit la requête SQL des membres soit la requête SQL de l'administrateur qu'il faut exécuter mais il ne veut pas.

A noter que j'utilise les variables de sessions. Pour les récupérer, j'ai mis le code suivant :
if ((isset($_SESSION['identifiant_connexion'])) && (!empty($_SESSION['identifiant_connexion'])))
{   echo "administrateur";
}
        else
             echo "membre";
?>


A noter que j'ai fait une table pour l'administrateur et une pour les membres.

Qu'est-ce que vous en pensez ?

J'ai cherché mais comme je suis bloqué, je poste ce message...

En attendant vos réponses, je continue mes recherches...
Cordialement

48 réponses

cs_stay Messages postés 493 Date d'inscription jeudi 7 juillet 2005 Statut Membre Dernière intervention 24 mai 2017 4
21 févr. 2013 à 18:36
Je vais prendre le temps pour une dernière fois t'expliquer.
Tu vois la citation de @jopop
J'imagine que tu es passé au travers, c'est le coté primitif tu cerveau humain pour ce défendre.
C'est la faute de personne.


Je vois que je suis pas le seul à désespérer de t'aider, ça fait plaisir
Bon, j'y connais rien en PHP, je vous laisse


Il a dit cela car tu es un cas particulier et comme il était frustrer que tu ne comprends pas tout du premier coups, voir pas du tout.
Il avait besoin dans parler.

Et là, je fait pareil que lui. je me confie ou monde entier qui nous suit.
Car tu n'as pas compris et que tu ne comprendras jamais que mes conseils était de ceux pour amélioré ton PHP et aussi ta logique.

Mais peut-être un jour tu te diras, poser une question et ne pas comprendre la réponse est un sujet qui donne à réfléchir et pas un sujet au l’autodéfense qui est une fatalité. Fait moi confiance, la programmation n'est pas ton seul sujet méconnus.

Cordialement,

stéph
0
cs_ghuysmans99 Messages postés 3982 Date d'inscription jeudi 14 juillet 2005 Statut Membre Dernière intervention 30 juin 2013 16
21 févr. 2013 à 18:46
(39 mails dans ma boite à propos de ce topic...)

Revois les bases du PHP... Ce n'est pas en nous fourguant du code sans essayer de comprendre ce que tu fais et en nous faisant chercher les erreurs que tu risques de progresser.

@stay : j'admire ta patience

VB.NET is good ... VB6 is better
Utilise Réponse acceptée quand un post répond à ta question
0
Ecoutez, je ne suis pas venu ici pour faire de la philosophie.

Cordialement
0
cs_ghuysmans99 Messages postés 3982 Date d'inscription jeudi 14 juillet 2005 Statut Membre Dernière intervention 30 juin 2013 16
21 févr. 2013 à 19:50
Nos dernières demandes sont tout à fait terre à terre...
Connaitre la base ne fait pas de tort, que tu fasses de la prog en amateur ou pas.

VB.NET is good ... VB6 is better
Utilise Réponse acceptée quand un post répond à ta question
0

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

Posez votre question
cs_jopop Messages postés 1540 Date d'inscription lundi 26 mai 2003 Statut Membre Dernière intervention 1 août 2013 12
21 févr. 2013 à 23:37
Oh les deux là, je tiens à vous dire que je fais ça par plaisir pas autre chose.

Tu arrives vraiment à prendre du plaisir ?

Si ce n'est pas ton métier (ce que je conçois volontiers), que le tien soit la plomberie ou la gestion des risques en centrale nucléaire, que penserais-tu si on avait la même approche que toi en te demandant conseil ?

Une citation japonaise que j'aime beaucoup (et que je t'ai peut-être déjà servie) est :
"Donne un poisson à un homme et il se nourri un jour, apprend lui à pêcher et il se nourrira toute sa vie".

Le "plaisir" des helpers (en tout cas le mien) c'est d'aider les gens à programmer, pas de programmer pour eux (ça c'est mon métier et je suis payé pour ça). Je n'ai aucune animosité envers toi, mais je ne te fournirai pas en poisson ad vitam (et je t'ai même prévenu lors de ma dernière aide avec un code tout fait, en PHP).

Maintenant, si tu as un objectif précis et que tu veux avancer sans comprendre le fonctionnement, que ce n'est pas le moyen mais la finalité qui t'intéresse, oriente toi vers les solutions toutes faites, comme les CMS.
0
Juste pour info, le boulet de service a finalement trouvé !!!

Cordialement
0
cs_stay Messages postés 493 Date d'inscription jeudi 7 juillet 2005 Statut Membre Dernière intervention 24 mai 2017 4
22 févr. 2013 à 14:23
Super, tu peux donc te contenter de ce que tu as et arrêter de coder.
Tu n'as plus le chois, je crois que plus personnes veut t'aider .

stéph
0
Ce n'est pas vrai, je me suis pas contenté de ce que j'avais puisqu'avant j'avais pas fait ce système de deux types d'utilisateurs, maintenant oui.

Ca s'appelle de la coopération ça lol !

Cordialement

PS : Vous êtes pas étonné que j'y suis arrivé tout seul... finalement comme sur l'autre sujet : http://www.sqlfr.com/forum/sujet-PROBLEME-ACCENTS_1626984.aspx ?
0
Rejoignez-nous