problème d‘authentification

problème d‘authentification - PHP - Programmation

Marsh Posté le 17-02-2006 à 11:05:46    

Bonjour,
J'ai un problème d‘authentification.Je m‘explique:
j‘ai un site avec plusieurs formulaires.Par exemple un des formulaires se trouve sur la page “a“ qui est dans le repertoire “a“,un autre formulaire se trouve dans la page “b” qui se trouve dans le repertoire b,etc.Pour pouvoir acceder a un des formulaires il faut d‘abord passer par une page ou on doit s‘identifier(login+password).Je voudrais savoir comment rediriger on fonction du formulaire demandé?
Par exemple:je clique sur la page “a” .La page identifier s‘ouvre.après avoir rentré mon login et mon password cela redirige vers la page “a“
maintenant je clique sur la page “b” .La page identifier s‘ouvre.après avoir rentré mon login et mon password cela redirige vers la page “b“
Merci d‘avance
STEF

Reply

Marsh Posté le 17-02-2006 à 11:05:46   

Reply

Marsh Posté le 17-02-2006 à 11:08:12    

>> pour aller à la page de login : login.php?redir=a.php
 
>> Dans le script de login :
if ( $login_ok )   header("location: ".$_GET["redir"]);

Reply

Marsh Posté le 17-02-2006 à 15:21:33    

dwogsi a écrit :

>> pour aller à la page de login : login.php?redir=a.php
 
>> Dans le script de login :
if ( $login_ok )   header("location: ".$_GET["redir"]);


Bonjour,
Merci de ta réponse.mais le problème c`est que le lien il y a déja .......php?page=1
le script php de cette page est:
<?php
if(!isset($_SESSION['utilisateur']))
{
echo "<script language='javascript'>document.location='http://www........com/espace_membre.php?page=1?'</script>";
}
?>
Ps(j‘ai mis des points pour cacher le nom de mon vrai site)
Donc je ne sais pas comment faire
Merci de votre aide
STEF

Reply

Marsh Posté le 17-02-2006 à 15:27:03    

biying a écrit :

Bonjour,
Merci de ta réponse.mais le problème c`est que le lien il y a déja .......php?page=1
le script php de cette page est:
<?php
if(!isset($_SESSION['utilisateur']))
{
echo "<script language='javascript'>document.location='http://www........com/espace_membre.php?page=1?'</script>";
header("location: http://www........com/espace_membre.php?page=1" );
}
?>
Ps(j‘ai mis des points pour cacher le nom de mon vrai site)
Donc je ne sais pas comment faire
Merci de votre aide
STEF


Et ou est le problème alors???

Message cité 1 fois
Message édité par dwogsi le 17-02-2006 à 15:27:23
Reply

Marsh Posté le 17-02-2006 à 16:10:57    

dwogsi a écrit :

Et ou est le problème alors???


Merci de ton aide.
Une derniere chose
voila le script php pour la page login:
<?php
if(isset($utilisateur) & !empty($utilisateur) & isset($motdepasse) & !empty($motdepasse))
{
 
$utilisateur=addslashes(htmlspecialchars($_POST[utilisateur]));
$motdepasse=addslashes(htmlspecialchars($_POST[motdepasse]));
 
 
connecter();
$query="SELECT * FROM `fournisseur` WHERE `utilisateur` LIKE '$utilisateur' and `motdepasse` LIKE '$motdepasse'";
$result=@mysql_query($query);
$num=@mysql_num_rows($result);
$row=@mysql_fetch_row($result);
if($num==0){
  echo "<br><br><center><font color='#990000'>Erreur ce pseudo (et/ou mot de passe) est incorrect!</font></center><br>";
}else{
 //connexion ?ablie
 $email = $row[3];
 $meme = $row;
 //-----------------VERSION 1.1-----------------
 $_SESSION['utilisateur']=$utilisateur;
 $_SESSION['email']=$email;
 $_SESSION['meme']=$meme;
 //---------------------------------------------
 
 
 echo "Connexion ?ablie...";
 echo "<script language='javascript'>document.location='espace_membre.php?page=1'</script>";
 }
}
?>
 
tu dis de mettre:
if ( $login_ok )   header("location: ".$_GET["redir"]);
Peux-tu me dire ou?
Mille merci
STEF

Reply

Marsh Posté le 17-02-2006 à 16:15:03    

Code :
  1. <?php
  2. if(isset($utilisateur) & !empty($utilisateur) & isset($motdepasse) & !empty($motdepasse))
  3. {
  4. $utilisateur=addslashes(htmlspecialchars($_POST[utilisateur]));
  5. $motdepasse=addslashes(htmlspecialchars($_POST[motdepasse]));
  6. connecter();
  7. $query="SELECT * FROM `fournisseur` WHERE `utilisateur` LIKE '$utilisateur' and `motdepasse` LIKE '$motdepasse'";
  8. $result=@mysql_query($query);
  9. $num=@mysql_num_rows($result);
  10. $row=@mysql_fetch_row($result);
  11. if($num==0){
  12.   echo "<br><br><center><font color='#990000'>Erreur ce pseudo (et/ou mot de passe) est incorrect!</font></center><br>";
  13. }else{
  14. //connexion ?ablie
  15. $email = $row[3];
  16. $meme = $row;
  17. //-----------------VERSION 1.1-----------------
  18. $_SESSION['utilisateur']=$utilisateur;
  19. $_SESSION['email']=$email;
  20. $_SESSION['meme']=$meme;
  21. //---------------------------------------------
  22. // >>>>>>>> ICI :
  23. header("location: ".$_GET["redir"]);
  24. /*
  25. echo "Connexion ?ablie...";
  26. echo "<script language='javascript'>document.location='espace_membre.php?page=1'</script>";
  27. */
  28. }
  29. }
  30. ?>


 
ET ON NE MET PAS DES LIKE


Message édité par dwogsi le 17-02-2006 à 16:16:29
Reply

Marsh Posté le 17-02-2006 à 17:08:28    

j‘ai changé le script comme tu m’as dit et pourtant ca ne marche pas.après avoir entré le login et le password ça revient a la page login.
le script est:
 
<?php
if(isset($utilisateur) & !empty($utilisateur) & isset($motdepasse) & !empty($motdepasse))
{
 
$utilisateur=addslashes(htmlspecialchars($_POST[utilisateur]));
$motdepasse=addslashes(htmlspecialchars($_POST[motdepasse]));
 
 
connecter();
$query="SELECT * FROM `fournisseur` WHERE `utilisateur` LIKE '$utilisateur' and `motdepasse` LIKE '$motdepasse'";
$result=@mysql_query($query);
$num=@mysql_num_rows($result);
$row=@mysql_fetch_row($result);
if($num==0){
  echo "<br><br><center><font color='#990000'>Erreur ce pseudo (et/ou mot de passe) est incorrect!</font></center><br>";
}else{
 //connexion ?ablie
 $email = $row[3];
 $meme = $row;
 //-----------------VERSION 1.1-----------------
 $_SESSION['utilisateur']=$utilisateur;
 $_SESSION['email']=$email;
 $_SESSION['meme']=$meme;
 //---------------------------------------------
 header("location: ".$_GET["redir"]);
 
 echo "Connexion ?ablie...";
 echo "<script language='javascript'>document.location='espace_membre.php?page=1'</script>";
 }
}
?>
Merci de ton aide
STEF

Reply

Marsh Posté le 18-02-2006 à 01:52:06    

Premièrement :
http://softsharing.free.fr/forum/code.PNG
 
Et ensuite tu fais quoi comme contrôle dans les autres pages???

Reply

Marsh Posté le 18-02-2006 à 09:55:23    

Bonjour,
Merci de ton aide.Malheureusement cela marche toujours pas.après avoir rentrer le login et le password et validé je reviens sur la page login et non sur la page formulaire
le php des pages ou il y a les formulaires pour controler sont:
<?php
if(!isset($_SESSION['utilisateur']))
{
 
header("location: http://www.interbizcenter.com/fr/e [...] ge=1&#034; );  
}
?>
la page du login est:
<?php
if(isset($utilisateur) & !empty($utilisateur) & isset($motdepasse) & !empty($motdepasse))
{
 
$utilisateur=addslashes(htmlspecialchars($_POST[utilisateur]));
$motdepasse=addslashes(htmlspecialchars($_POST[motdepasse]));
 
 
connecter();
$query="SELECT * FROM `fournisseur` WHERE `utilisateur` LIKE '$utilisateur' and `motdepasse` LIKE '$motdepasse'";
$result=@mysql_query($query);
$num=@mysql_num_rows($result);
$row=@mysql_fetch_row($result);
if($num==0){
  echo "<br><br><center><font color='#990000'>Erreur ce pseudo (et/ou mot de passe) est incorrect!</font></center><br>";
}else{
 //connexion ?ablie
 $email = $row[3];
 $meme = $row;
 //-----------------VERSION 1.1-----------------
 $_SESSION['utilisateur']=$utilisateur;
 $_SESSION['email']=$email;
 $_SESSION['meme']=$meme;
 //---------------------------------------------
 header("location: ".$_GET["redir"]);
/*  
 echo "Connexion ?ablie...";
 echo "<script language='javascript'>document.location='espace_membre.php?page=1'</script>";
*/
 }
}
?>
 
 
la page: espace_membre.php?page=1 est la page login
les pages :espace_membre.php?page=2,espace_membre.php?page=3,etc sont les pages ou il y a des formulaires
Merci de votre aide
Je sais que je suis très embetant
STEF

Reply

Marsh Posté le 18-02-2006 à 14:40:16    

et session_start() il est ou???
à moins que le session autostart soit activé?

Reply

Marsh Posté le 18-02-2006 à 14:40:16   

Reply

Marsh Posté le 18-02-2006 à 14:40:52    

biying a écrit :

<?php
if(!isset($_SESSION['utilisateur']))
{
 
header("location: http://www.interbizcenter.com/fr/e [...] ge=1&#034; );  
}
?>


Et ça niveau sécurité c'est pas terrible...

Message cité 1 fois
Message édité par dwogsi le 18-02-2006 à 14:41:04
Reply

Marsh Posté le 18-02-2006 à 15:30:27    

dwogsi a écrit :

Et ça niveau sécurité c'est pas terrible...


bonjour,
tout tourne autour de la page espace_membre
<?php
session_start();
 
 
 
require("config.inc.php" );
include("$functions/functions.inc.php" );
 
if(isset($page)){
 if(!is_numeric($page)){  
  echo "Erreur la variable $page doit 阾re un entier!";
  exit;
 }
}
 
 
switch($page)
{
case '1': @include ("$repertoire/connecter.php" );break;
case '2': @include("$repertoire1/vdr.php" );break;
case '3': include("$repertoire2/anc.php" );break;
case '4': @include("$repertoire3/adr.php" );break;
case '5': @include("$repertoire4/rps.php" );break;
case '6': @include("$repertoire5/rao.php" );break;
case '7': @include("$repertoire/connecter2.php" );break;
case '8': @include("$repertoire/connecter3.php" );break;
case '9': @include("$repertoire/connecter4.php" );break;
case '10': @include("$repertoire/connecter5.php" );break;
case '11': @include("$repertoire/connecter6.php" );break;
default: @include("$repertoire/connecter.php" );break;  
}
 
?>
 
tu peux me dire pourquoi je reviens toujours sur la page login après rentrer le login et le password?
comment améliorer la sécurité de mon site?
Merci beaucoup de ton aide
STEF

Reply

Marsh Posté le 18-02-2006 à 16:37:46    

Bon alors :
Si tu as un système d'authentification, tu dois avoir quelque part un script qui contrôle si l'utilisateur est bien loggé dans les pages à accès restreint.  
 
C'est cette partie que je serais curieux de voir puisque, normalement, si l'utilisateur n'est pas loggé tu dois y faire une redirection vers la page de login. A mon avis c'est par là qu'il y a un problème.

Reply

Marsh Posté le 18-02-2006 à 17:14:40    

Bonjour
D‘abord merci de ton aide.
J’ai réussi à trouver la solution.
Mais il y a comme même encore un problème.
Donc quand je m‘identifie cela retombe sur la page login.Par contre si je clique sur un des boutons pour aller dans une des pages ou il y a un formulaire je suis bien logue.
Donc comment faire pour ne pas retourner dans la page login?
STEF

Reply

Marsh Posté le 18-02-2006 à 18:39:16    

Ba je dirais...
...de nouveau :

dwogsi a écrit :

Bon alors :
Si tu as un système d'authentification, tu dois avoir quelque part un script qui contrôle si l'utilisateur est bien loggé dans les pages à accès restreint.  
 
C'est cette partie que je serais curieux de voir puisque, normalement, si l'utilisateur n'est pas loggé tu dois y faire une redirection vers la page de login. A mon avis c'est par là qu'il y a un problème.


 

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed