Jump to content

[RESOLUT] Page de login independante


Recommended Posts

Bonjour,

j'ai une boutique avec multiboutique. quand le client arrive sur l'adresse de la vitrine de ma société, il peuvent se logger. Les clients n’étant pas partagé entre chaque boutique, je dois creer une page login ou le client va introduire login et mdp.

Cette page va directement dans la db voir à quel boutique il appartient et en fonction il dirige sur la page authentication avec en $_POST le login et passwd.

Probleme, il ne log pas le client il se contente d'afficher la page avec les champs "Adresse e-mail" et "Mot de passe".

 

Avez vous une idée de comment logger directement sans que le client soit obliger de cliquer malgré tout sur le bouton. Comme il a déjà cliqué sur ce bouton avant je n'ai pas envie qu'ils doivent cliquer 2 foix pour se logger

 

Voici ce que j'ai fait sur une 1.5.4.

 

MErci pour votre aide

 

Fichier connection (un simple form avec la demande d'info necessaire) :

<form action="bin/validation.php" method="post">
<fieldset>
<h3>Déjà enregistré ?</h3>
<p>
<label for="email">Adresse e-mail</label>
<span><input type="text" id="email" name="email" value=""></span>
</p>
<p>
<label for="passwd">Mot de passe</label>
<span><input type="password" id="passwd" name="passwd" value=""></span>
</p>
<p class="submit">
<input type="submit" name="SubmitLogin" value="Identifiez-vous">
</p>
</fieldset>
</form>

 

Le fichier de validation (vérifie les data du client et dirige vers la bonne boutique)

<?php

if (isset($_POST['email']) && isset($_POST['email']))
{
if($_POST["email"] != "" && $_POST["passwd"] != "")
{
	$crypt	 = "p8fky9ctoH5n0EUiFN00o056sMbeT2fhQTWrrgz0qOvZCA8Enq43djVJ"; //Clé pour le hash en MD5
  $email	 = $_POST["email"] ;
  $passwd	= $crypt."". $_POST["passwd"] ;
  $passwd	= md5($passwd);
	 $passwd_no_crypt = $_POST["passwd"] ;

	include "functions.php";
	include "connexion_mysql.php";

  //création de la requête SQL
  $query="SELECT ps_customer.id_customer,
								 ps_customer.email,
								 ps_customer.passwd,
  				  ps_customer.id_shop,
								 ps_shop_url.id_shop_url,
								 ps_shop_url.virtual_uri
					FROM ps_customer, ps_shop_url
					WHERE ps_customer.id_shop = ps_shop_url.id_shop_url
					AND ps_customer.email = '".$email."'
					AND ps_customer.passwd = '".$passwd."'"	;

	$requete=Query($query,1);
  //on récupère le résultat
  //$result = mysql_fetch_object($requete) ;
  //si la requête s'est bien passée
  $num_rows=mysql_num_rows($requete);
	$i=0;													
	echo $num_rows;
	while($rec=mysql_fetch_array($requete))
	{
		$id_customer[$i][0]=$rec[0];	
		  $log_email[$i][1]=$rec[1];	
		 $log_passwd[$i][2]=$rec[2];	
	   	 $id_shop[$i][3]=$rec[3];	
		$id_shop_url[$i][4]=$rec[4];	
		$virtual_uri[$i][5]=$rec[5];	
		$i++;
	}			

  if($num_rows > 0)
  {

  	 $_POST['email'] = $email;
  	 $_POST['passwd'] = $passwd;

  	 ?>
  	 <form name="authentification" action="../boutique/<?php echo $virtual_uri[0][5]; ?>fr/authentification" method="POST">
  <input type="hidden" value="<?php echo $email; ?>" name="email">
  <input type="hidden" value="<?php echo $passwd_no_crypt; ?>" name="passwd">
  </form>
  <!--On envoie les données au formulaire d'authentification-->
  <!--J'utilise cette methode pour que le submit soit en automatique et envois les infos en $_POST-->	  
  <SCRIPT type="text/javascript">
  authentification.submit();
  </SCRIPT>
  <?php
  }//fin if
  //sinon on retourne à la page d'accueil
  else
  {
		 echo "loggin ou mdp erroné";
  	 header("Location: ../boutique/error") ;
  }//fin else
}//fin if
else
{
	 echo "nok2";
  header("Location: ../boutique/error") ;
}//fin else
}
else echo "Erreur pas de login ou mot de passe";
?>

Edited by x-ecute (see edit history)
Link to comment
Share on other sites

Bonjour,

 

Il faut également passer un paramètre en POST qui est "SubmitLogin" afin de dire à la page d'authentification que l'on soumet le formulaire de login. Tu peux donc insérer ce dernier en champ hidden, comme première étape et voir ce que ça donne ensuite.

  • Like 1
Link to comment
Share on other sites

Oui,

 

j'ai fait un copié collé en changeant l'adresse mais rien. J'arrive bien sur la page mais il me demande de mettre le login et le password

<form name="authentification" action="../boutique/admin3172/index.php?controller=AdminLogin" method="POST">
  	   <input type="hidden" value="SubmitLogin" name="SubmitLogin">
  	   <input type="hidden" value="<?php echo $email; ?>" name="email">
  	   <input type="hidden" value="<?php echo $passwd_no_crypt; ?>" name="passwd">
  	   </form>

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...