Cocob84
Messages postés38Date d'inscriptionmercredi 10 octobre 2012StatutMembreDernière intervention23 juin 2014
-
Modifié par Cocob84 le 13/06/2014 à 10:13
Cocob84
Messages postés38Date d'inscriptionmercredi 10 octobre 2012StatutMembreDernière intervention23 juin 2014
-
13 juin 2014 à 11:52
Bonjour,
J'ai fais un système de connexion ou les compte contient une colonne "droits" soit droits Administrateur ou droits Visiteur
Administrateur contient la lettre A
Visiteur contient contient la lettre V
Ma page pour la connexion est celle ci :
Quand je me connecte sa marche bien
if (isset($_POST['login'])){ // execution uniquement apres envoi du formulaire (test si la variable POST existe)
$login = addslashes($_POST['login']); // mise en variable du nom d'utilisateur
$pass = addslashes(($_POST['pass'])); // mise en variable du mot de passe
$verif_query=sprintf("SELECT * FROM Compte WHERE login='$login' AND password='$pass'");
$verif = mysql_query($verif_query) or die(mysql_error());
$row_verif = mysql_fetch_assoc($verif);
$admin = mysql_num_rows($verif);
if ($admin)
{ // On test s'il y a un utilisateur correspondant
session_register("authentification"); // enregistrement de la session
// déclaration des variables de session
$_SESSION['nom'] = $row_verif['nom']; // Son nom
$_SESSION['login'] = $row_verif['login']; // Son Login
$_SESSION['droits'] = $row_verif['droits'];
// header("Location:Contenus.php"); // redirection si OK
if(isset($_SESSION['droits']))
{
if($_SESSION['droits']=="A") header('location:Contenus.php');
elseif($_SESSION['droits']=="V")header('location:index3.php');
else echo"Vous n'avez aucun droits d'accés";
}
}
else
Le droits Administrateur a le droits de insérer ,modifie ,supprimer des données du site
Le droits visiteur juste de voir les données.
je possède déjà la page administrateur ,
C'est mieux de refaire une page visiteur en enlevant les bouton et lien ou d"utiliser une fonction qui bloque les bouton plus lien et comment on fait ?
et pour éviter que quelqu'un est accès a mon site en tapant juste l'adresse j'ai test sa au début de mes pages mais sa bloquer rien j'arrive a y accès normalement:
<?php
session_start(); // ici on continue la session
if ((!isset($_SESSION['login'])) || ($_SESSION['login'] == ''))
{
// La variable $_SESSION['login'] n'existe pas, ou bien elle est vide
// <=> la personne ne s'est PAS connectée
echo '<p>Vous devez vous <a href="index.php">connecter</a>.</p>'."\n";
exit();
}
?>
ou sa pareil sa bloque pas l'accés
<?php
session_start();
if (isset($_SESSION['connect']))//On vérifie que le variable existe.
{
$connect=$_SESSION['connect'];//On récupère la valeur de la variable de session.
}
else
{
$connect=0;//Si $_SESSION['connect'] n'existe pas, on donne la valeur "0".
}
if ($connect == "1") // Si le visiteur s'est identifié.
{
// On affiche la page cachée.
?>
jordane45
Messages postés37714Date d'inscriptionmercredi 22 octobre 2003StatutModérateurDernière intervention21 septembre 2023342 13 juin 2014 à 10:39
Bonjour,
C'est mieux de refaire une page visiteur en enlevant les bouton et lien ou d"utiliser une fonction qui bloque les bouton plus lien et comment on fait ?
Le mieux est de n'avoir qu' UNE page et d'y gérer l'affichage ou non des boutons en fonction des droits.
tu peux faire quelque chose du genre :
if($_SESSION['droits']=="A"){
// affichage d'un bouton
echo "<input type="buton" .....>";
}
// a faire pour chaque bouton à afficher ou non !
et pour éviter que quelqu'un est accès a mon site en tapant juste l'adresse j'ai test sa au début de mes pages mais sa bloquer rien j'arrive a y accès normalement:
-> Déjà... Sur ce forum... on ne pose qu' UNE question par discussion...
La prochaine fois, merci d'ouvrir une discussion POUR CHAQUE question.
session_start(); // ici on continue la session
if ((!isset($_SESSION['login'])) || ($_SESSION['login'] == ''))
{
// La variable $_SESSION['login'] n'existe pas, ou bien elle est vide
// <=> la personne ne s'est PAS connectée
header('Location: /repertoire/mapage.php');
exit();
}
=> En mettant la page que tu souhaites afficher si il n'est pas connecté à la place de /repertoire/mapage.php
"-> Déjà... Sur ce forum... on ne pose qu' UNE question par discussion...
La prochaine fois, merci d'ouvrir une discussion POUR CHAQUE question. "
Je voulais pas blinder le forum désolée
OK pour la prochaine fois
Pour l'affichage ou non des boutons sa fonctionne niquel Merci
Le problème c'est pour l'accès au site juste en tapant le lien on peut toujours y accéder
sa me mais aucun message d'erreur sa affiche normalement connecté ou non
Merki
jordane45
Messages postés37714Date d'inscriptionmercredi 22 octobre 2003StatutModérateurDernière intervention21 septembre 2023342 13 juin 2014 à 11:15
Le problème c'est pour l'accès au site juste en tapant le lien on peut toujours y accéder
sa me mais aucun message d'erreur sa affiche normalement connecté ou non
Tu as regardé ce que valent tes variables de session ?
Si tu as déjà une page ouverte sur ton site (en étant logué)... les variables de sessions sont renseignées..et donc.. normal qu'il ne te fasse pas le redirection...
Essayes ceci pour voir :
session_start(); // ici on continue la session
Echo "<br> Variables de session = <br>";
print_r($_SESSION);
if ((!isset($_SESSION['login'])) || ($_SESSION['login'] == ''))
{
// La variable $_SESSION['login'] n'existe pas, ou bien elle est vide
// <=> la personne ne s'est PAS connectée
header('Location: /repertoire/mapage.php');
exit();
}
Modifié par Cocob84 le 13/06/2014 à 11:08
"-> Déjà... Sur ce forum... on ne pose qu' UNE question par discussion...
La prochaine fois, merci d'ouvrir une discussion POUR CHAQUE question. "
Je voulais pas blinder le forum désolée
OK pour la prochaine fois
Pour l'affichage ou non des boutons sa fonctionne niquel Merci
Le problème c'est pour l'accès au site juste en tapant le lien on peut toujours y accéder
sa me mais aucun message d'erreur sa affiche normalement connecté ou non
Merki
13 juin 2014 à 11:15
Si tu as déjà une page ouverte sur ton site (en étant logué)... les variables de sessions sont renseignées..et donc.. normal qu'il ne te fasse pas le redirection...
Essayes ceci pour voir :