Vérification admin/membre
Résolu
ProgProject
Messages postés
81
Statut
Membre
-
Alain_42 Messages postés 5413 Statut Membre -
Alain_42 Messages postés 5413 Statut Membre -
Bonjour,
Je suis un jeune développeur web de 14 ans.
Je suis entrain de faire un réseau social.
j'ai déjà fait ma page index (connexion/inscription)
et mes page de membre (membre.php) et admin (admin.php) .
Bref tout fonctionne mais je voudrais protégé les deux pages:
membre.php:
Seul les membres connecté peuvent accéder à cette page .
admin.php:
Seul l'Administrateur peut accéder à cette page.
Voici mon script de connexion:
Et voici ma table:
Si vous avez une solution.
PS: Si vous avez un script il est le bien venu
Je suis un jeune développeur web de 14 ans.
Je suis entrain de faire un réseau social.
j'ai déjà fait ma page index (connexion/inscription)
et mes page de membre (membre.php) et admin (admin.php) .
Bref tout fonctionne mais je voudrais protégé les deux pages:
membre.php:
Seul les membres connecté peuvent accéder à cette page .
admin.php:
Seul l'Administrateur peut accéder à cette page.
Voici mon script de connexion:
<?php
session_start();
if(isset($_POST['submit']))
{
$username = mysql_real_escape_string(trim($_POST['pseudo']));
$password = mysql_real_escape_string(trim($_POST['password']));
$password = md5($password);
if(empty($username))
{
echo "<font color='red'>Veuillez saisir un pseudo !</font>";
}else if(empty($password))
{
echo "<font color='red'>Veuillez saisir un Mot de Passe !</font>";
}else{
$connect2;
$log = mysql_query("SELECT * FROM user WHERE username='$username' AND
password='$password' AND profil='0' ");
$log1 = mysql_query("SELECT * FROM user WHERE username='$username'
AND password='$password' AND profil='1' ");
$rows = mysql_num_rows($log);
$rows1 = mysql_num_rows($log1);
if($rows==1)
{
$_SESSION['username'] = $username;
header('Location:membre.php');
}
elseif($rows1==1) {
$_SESSION['username'] = $username;
header('Location:admin.php');
}else echo"<font color='red'>Pseudo ou Mot de Passe incorrect !</font>";
}
}
?>
<font
style="color:white">Pseudo Mot de Passe</font>
<form method="post" action="">
<input style="width:210px;height:30px;" type="text" name="pseudo"
placeholder="Votre Pseudo" value="<?php if(isset($_POST['submit'])){echo
$_POST['username'];} ?>"/>
<input style="width:210px;height:30px;" type="password" name="password"
placeholder="Votre Mot de passe" />
<input style="background-color:#3b5998;color:white" type="submit"
name="submit" value="Connexion" />
</form>
Et voici ma table:
CREATE TABLE IF NOT EXISTS 'user' (
'id' int(11) NOT NULL AUTO_INCREMENT,
'username' varchar(255) COLLATE utf8_unicode_ci NOT NULL,
'email' varchar(255) COLLATE utf8_unicode_ci NOT NULL,
'password' varchar(255) COLLATE utf8_unicode_ci NOT NULL,
'desc' text COLLATE utf8_unicode_ci NOT NULL,
'jour' varchar(2) COLLATE utf8_unicode_ci NOT NULL,
'mois' varchar(2) COLLATE utf8_unicode_ci NOT NULL,
'ans' varchar(4) COLLATE utf8_unicode_ci NOT NULL,
'profil' int(11) NOT NULL DEFAULT '2',
PRIMARY KEY ('id')
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci
ROW_FORMAT=DYNAMIC AUTO_INCREMENT=2 ;
Si vous avez une solution.
PS: Si vous avez un script il est le bien venu
A voir également:
- Vérification admin/membre
- Membre indisponible vinted - Guide
- Livebox admin - Guide
- Mot de passe admin - Guide
- Comment retrouver un membre anonyme sur facebook - Forum Vos droits sur internet
- Easywifi.config admin - Forum WiFi
4 réponses
si je comprend bien, depuis ton micro tu te connectes, en admin par exemple ça va bien sur admin.php. et ensuite tu tapes directement admin.php dans ton navigateur et ça autorise l'accès.
C'est normal, ta session est ouverte.
essayes en fermant le navigateur et en accédant directement à admin.php tu verra.
C'est normal, ta session est ouverte.
essayes en fermant le navigateur et en accédant directement à admin.php tu verra.
salut modifies ainsi ta page connexion:
ET
ET
if($rows==1) { //membre $_SESSION['username'] = $username; header('Location:membre.php'); } elseif($rows1==1) { //admin $_SESSION['username'] = $username; $_SESSION['profil'] = 1; header('Location:admin.php'); .......
ET
<?php //a mettre dans TOUTES tes pages membre session_start(); if(empty($_SESSION['username'])){ //la variable de session n'existe pas ou est vide,( on tente d'accéder à cette page sans passer par le script de connexion) //renvoi vers la page de connexion header('Location:index.php'); }else { //le membre est bien identifié //ici le contenu de ta page membre } //ne pas oublier cette } en fin de code
ET
<?php //a mettre dans TOUTES tes pages ADMIN session_start(); if(empty($_SESSION['username']) OR (empty($_SESSION['profil']) AND $_SESSION['profil']!=1)){ //les variables de session username et profil sont inexistantes ou vides( on tente d'accéder à cette page sans passer par le script de connexion) //renvoi vers la page de connexion header('Location:index.php'); }else { //l'admin est bien identifié //ici le contenu de ta page admin } //ne pas oublier cette } en fin de code