Reconnaissance dans un l'éspace membre
Fermé
Phpdevelop
-
Modifié par Phpdevelop le 22/04/2013 à 10:16
Utilisateur anonyme - 22 avril 2013 à 14:21
Utilisateur anonyme - 22 avril 2013 à 14:21
A voir également:
- Reconnaissance dans un l'éspace membre
- Espace insécable word - Guide
- Libérer espace gmail - Guide
- Reconnaissance musique en ligne sans télécharger - Guide
- Membre indisponible vinted - Guide
- Reconnaissance facial en ligne - Guide
9 réponses
Utilisateur anonyme
22 avril 2013 à 10:50
22 avril 2013 à 10:50
Salut salut,
Le plus simple pour différencier le statut des membres c'est d'avoir une colonne en base de donnée avec un id par profil, comme ça tu récupère le paramètre lors de la connexion.
Le plus simple pour différencier le statut des membres c'est d'avoir une colonne en base de donnée avec un id par profil, comme ça tu récupère le paramètre lors de la connexion.
Utilisateur anonyme
22 avril 2013 à 11:15
22 avril 2013 à 11:15
J'aurais pensé à quelque chose comme ça :
Je suppose que tu as une table qui répertorie les logins / mot de passe pour les membres, tu peux ajouter un champ par exemple "profil" qui contient un entier dans cette table (login,mdp,profil -> "piou",crypté("mdp_piou"),"1" ) et à coté une petite table correspondance_profile faisant le lien entre l'id profil et le profil :
id_profil | profil
1 | admin
2 | staf
3 | visiteur
Et quand le personne s'identifie tu récupère le id_profil qui va avec ses identifiants et tu personnalises le message d'accueil .
Je suppose que tu as une table qui répertorie les logins / mot de passe pour les membres, tu peux ajouter un champ par exemple "profil" qui contient un entier dans cette table (login,mdp,profil -> "piou",crypté("mdp_piou"),"1" ) et à coté une petite table correspondance_profile faisant le lien entre l'id profil et le profil :
id_profil | profil
1 | admin
2 | staf
3 | visiteur
Et quand le personne s'identifie tu récupère le id_profil qui va avec ses identifiants et tu personnalises le message d'accueil .
Merci mais Je comprend l'histoire de ""piou",crypté("mdp_piou"),"1" )"
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Utilisateur anonyme
22 avril 2013 à 12:01
22 avril 2013 à 12:01
Quel est le code que tu utilises pour aller vérifier l'identification d'un utilisateur?
Ma page connexion qui permet de se connecté ou la page qui affiche le nom de l'utilisateur une fois conencté ?
Utilisateur anonyme
22 avril 2013 à 12:15
22 avril 2013 à 12:15
La requête qui vérifie si le login et le mot de passe sont corrects ou non.
C'est la page de connexion :
<?php
// on teste si le visiteur a soumis le formulaire de connexion
if (isset($_POST['connexion']) && $_POST['connexion'] == 'Connexion') {
if ((isset($_POST['login']) && !empty($_POST['login'])) && (isset($_POST['pass']) && !empty($_POST['pass']))) {
$base = mysql_connect ('', '', '');
mysql_select_db ('', $base)
or die(mysql_error());
// on teste si une entrée de la base contient ce couple login / pass
$sql = 'SELECT count(*) FROM membre WHERE login="'.mysql_escape_string($_POST['login']).'" AND pass_md5="'.mysql_escape_string(md5($_POST['pass'])).'"';
$req = mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error());
$data = mysql_fetch_array($req);
mysql_free_result($req);
mysql_close();
// si on obtient une réponse, alors l'utilisateur est un membre
if ($data[0] == 1) {
session_start();
$_SESSION['login'] = $_POST['login'];
header('Location: ../compte');
exit();
}
// si on ne trouve aucune réponse, le visiteur s'est trompé soit dans son login, soit dans son mot de passe
elseif ($data[0] == 0) {
$erreur = '<span style="color: #05A8E3; ">Mot de passe ou Login incorrect.</span>';
}
// sinon, alors la, il y a un gros problème :)
else {
$erreur = 'Probème dans la base de données : plusieurs membres ont les mêmes identifiants de connexion.';
}
}
else {
$erreur = '<span style="color: #05A8E3; ">Au moins un des champs est vide.</span>';
}
}
?>
<?php
// on teste si le visiteur a soumis le formulaire de connexion
if (isset($_POST['connexion']) && $_POST['connexion'] == 'Connexion') {
if ((isset($_POST['login']) && !empty($_POST['login'])) && (isset($_POST['pass']) && !empty($_POST['pass']))) {
$base = mysql_connect ('', '', '');
mysql_select_db ('', $base)
or die(mysql_error());
// on teste si une entrée de la base contient ce couple login / pass
$sql = 'SELECT count(*) FROM membre WHERE login="'.mysql_escape_string($_POST['login']).'" AND pass_md5="'.mysql_escape_string(md5($_POST['pass'])).'"';
$req = mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error());
$data = mysql_fetch_array($req);
mysql_free_result($req);
mysql_close();
// si on obtient une réponse, alors l'utilisateur est un membre
if ($data[0] == 1) {
session_start();
$_SESSION['login'] = $_POST['login'];
header('Location: ../compte');
exit();
}
// si on ne trouve aucune réponse, le visiteur s'est trompé soit dans son login, soit dans son mot de passe
elseif ($data[0] == 0) {
$erreur = '<span style="color: #05A8E3; ">Mot de passe ou Login incorrect.</span>';
}
// sinon, alors la, il y a un gros problème :)
else {
$erreur = 'Probème dans la base de données : plusieurs membres ont les mêmes identifiants de connexion.';
}
}
else {
$erreur = '<span style="color: #05A8E3; ">Au moins un des champs est vide.</span>';
}
}
?>
Utilisateur anonyme
22 avril 2013 à 14:21
22 avril 2013 à 14:21
Il faut que tu renseignes en base de donnée dans ta table membre un nouveau champ qui précise le statut de chaque utilisateur (visteur,staf, etc). Lorsque tu fais ta requête select count(*)... tu récupère ce nouveau champ et tu l'enregistres dans une session de la même manière que tu enregistres le login.
Mails il y aurait quand même quelque petites choses à changer dans le code.. Si tu test le nombre d'utilisateur ^possédant les mêmes identifiants c'est que tu laisses insérer en base plusieurs fois les mêmes identifiants, ce qui ne devrait pas être possible.
Mails il y aurait quand même quelque petites choses à changer dans le code.. Si tu test le nombre d'utilisateur ^possédant les mêmes identifiants c'est que tu laisses insérer en base plusieurs fois les mêmes identifiants, ce qui ne devrait pas être possible.