Probleme de droits lors du login

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Probleme de droits lors du login

par Itite » 14 juin 2005, 08:41

Ok, bon j'ai trouvé pr le pb !!!

Fallait mettre "ne pas utiliser de proxy pr les adresses locales" et j'ai rajouté l'adresse Ip du serveur ds les exceptions.

Ca marche nikel maintenant avc les boutons ki s'affichent selon les droits et en tapant l'adresse IP du server ds l'url.
:)

par Itite » 14 juin 2005, 08:23

Oui, c'est ça lors de l'ouverture dInternet Explorer, le proxy demande un login et un mot de passe.

Que ce soit en me loguant ou non : avec le nom du serveur ca march et pas avec l'adresse Ip..

par Cyrano » 13 juin 2005, 21:16

Bizarre, à moins que ta machine soit derrière un proxy... :?:

par Itite » 13 juin 2005, 20:32

Oui je suis sûr !

Chez moi tout fonctionne correctement...
..Mais c'est au boulot, rien ne marche correctement !

Je mets la bonne adresse IP mais voila ça n'fonctionne po ! snif

par Cyrano » 13 juin 2005, 20:28

Es-tu bien sûr de mettre la bonne IP ?

par Itite » 13 juin 2005, 20:27

J'ai besoin qu'on m'éclaire !

Comment ça se fait que pour accéder à mon site, je tape ds l'url :
http://nom du serveur / répertoire ds www
Cela fonctionne..
..Mais si je tape :
http://adresse ip du serveur / répertoire ds www
Cela ne fonctionne pas !

C'est un pb de DNS ??!!

par Cyrano » 13 juin 2005, 17:42

Remplace la vérification en base de donnéées comme ceci, ça améliorera un peu:
$nb_ligne = mysql_num_rows($result); 
// Si on a trouvé un enregistrement
if ($ligne > 0)
{
    // renvoi d'un enregistrement
    while($ligne = mysql_fetch_array($result))
    {
        session_start();
        $_SESSION['droit'] = $ligne['NUM_GROUPE'];

        if ($ligne['NUM_GROUPE'] == 1)
        {
            header("Location:index.php?Page=menu_admin");
        }
    }
}

par Itite » 13 juin 2005, 17:26

Pourtant ca marche sur un pc en localhost, en ligne rien ne va plus..

Voila mon code du fichier connexion.php :

<?php
session_start();
// Cette page est importante pour la sécurité, elle vérifie que les utilisateurs se sont logés correctement

$message = NULL;

// Connexion à la base de données
require('config/myConnexion.php');
$connexion=mysql_pconnect(SERVER,USER,PASSWD);
if(!$connexion){
	$message .= "<h3 class=\"popup_close\">Désolé, connexion à la base de données " . SERVER . " impossible </h3><br>";
}
if(!mysql_select_db(BASE,$connexion)){
	$message .= "<h3 class=\"popup_close\">Désolé, connexion à la base de données " . BASE . " impossible </h3><br>";
}
	// On récupère le login et le mot de passe qui ont été saisis 
	$login = $_POST['login']; 	// mise en variable du login
	$pass = ($_POST['mdp']); // mise en variable du mot de passe
	$_SESSION['login'] = $_POST['login'];
	
	// Si tout est OK, on récupére les champs concernant l'utilisateur qui s'est identifié
	$rq = " SELECT *
			FROM utilisateur 
			WHERE LOGIN='$login' 
			AND MDP='$pass' ";
	$result = mysql_query ($rq);     // Exécution de la requête
	if(!$result){
		$erreur = mysql_error($connexion);
	}

	$ligne = mysql_fetch_array ($result); // renvoie d'un enregistrement
	if ($ligne)
	
	{ // on a trouvé un enregistrement
		session_start();
		$_SESSION['droit'] = $ligne['NUM_GROUPE'];
		
		if ($ligne['NUM_GROUPE'] == 1) {				
			header("Location:index.php?Page=menu_admin");
		}
	}
	else
	{ // Aucun enregistrement ne répond à la requête
		echo "<link rel=\"StyleSheet\" type=\"text/css\" href=\"style.css\">";
		echo "<br><div align=\"center\"><table width=\"600\" border=\"0\"cellspacing=\"0\" cellpadding=\"0\" height=\"30\" background=\"images/header.gif\">";
		echo "<tr><td height=\"22\" background=\"images/title.gif\" class=\"menu\">&nbsp;</td></tr>";
		echo "<tr><td align=\"center\" valign=\"top\" bgcolor=\"78B1F3\">";
		echo "<table width=\"600\" border=\"0\" cellspacing=\"1\" cellpadding=\"0\">";
        echo "<tr><td align=\"center\" valign=\"top\" bgcolor=\"#FFFFFF\">";
		echo "<table width=\"600\" border=\"0\" cellspacing=\"5\" cellpadding=\"0\"><tr><td colspan=\"2\">&nbsp;</td></tr>";
		echo "<br><div align=\"center\"><img src=\"images/erreur.ico\"></div>";
		echo "<br><h2 class=\"titre\">ERREUR</h2><br>";
		echo $message .= "<h3 class=\"popup_close\">Vous avez entrez un login incorrect et/ou un mot de passe invalide</h3><h3 class=\"popup_close\">Vous devez vous identifiez à nouveau</h3><br>";
		echo "<br><table width=\"600\" border=\"0\" cellspacing=\"5\" cellpadding=\"0\">";
		
		echo "</table></td></tr></table></td></tr></table></div>";
	}
[/php]

par robined » 13 juin 2005, 17:19

comment teste tu s'il s'agit d'un administrateur ou d'un visiteur?
Moi, je passerais pas une session dont je testerais la valeur pour mettre les boutons coorespondants.

par Cyrano » 13 juin 2005, 17:19

Difficile de te répondre sans voir de code, il faudrait voir comment tu testes les valeurs te permettant d'identifier un visiteur ou l'administrateur...

Probleme de droits lors du login

par Itite » 13 juin 2005, 17:08

Hello,

J'affiche des boutons selon le groupe auquel appartient l'utilisateur

L'administrateur doit se loguer avec un login et un mot de passe.

L'administrateur ou un visiteur (qui ne se logue pas) naviguent sur le smêmes pages et donc j'affiche des boutons selon leurs droits.

Ce la fonctionne bien lorsque je suis en localhost.

Lorsque je mets mon site sur le serveur, ca ne fonctionne pas que ce soit à partir du serveur ou du client. Lorsque l'admin se logue, il dispose des boutons d'un visiteur.
Alors je ne comprends pas alors que ca marche en localhost.

Connaissez-vous ce genre de pb, d'ou cela peut venir?