Log en php

Log en php - PHP - Programmation

Marsh Posté le 24-03-2005 à 11:44:50    

Salut a tous !!
J'ai un petit soucis de log avec ce code...En fait la premiere fois que je rentre le Loggin et MdP il me renvoie a cette page, (sans le message d'erreur), et lorsque je le rentre a nouveau tout fonctionne.... je suis redirectionné coorectemnt.  
 
 

Code :
  1. if (isset($provenance)){
  2. if($provenance=="form_login" ) {
  3. include "./includes/connect.php3";
  4. $login = trim(htmlspecialchars(addslashes($login))); # Parsing du login
  5. $mdp = trim(htmlspecialchars(addslashes($mdp))); # parsing du password
  6. if( ( strlen($login)!=0) && (strlen($mdp)!=0) ) {
  7. $query="select * from user where login='$login' and mdp='$mdp'";
  8. $result=mysql_query($query);
  9. $nb=mysql_num_rows($result);
  10. } else { $nb = 0;}
  11. if ( $nb > 0)
  12. {
  13. $obj = mysql_fetch_object($result);
  14. session_start();//démarrage d'une session
  15. $_SESSION['admin'] = true;
  16. echo"<script>\n
  17. window.location.href='./admin.php3';\n
  18. </script>";
  19. } else {
  20.    unset($nb);
  21.    unset($provenance);
  22.    $action = "erreur";
  23.   }
  24. }
  25. }


 
 
le formulaire :

Code :
  1. <form name="form" method="post" action="./login.php3">
  2. (...)             
  3. Login : </td>                   
  4. <td width="23%">
  5. <input type="text" name="login" size="15"> </td>
  6. <b>Mot de passe</b>
  7. <input type="password" name="mdp" size="10">
  8. <input name="provenance" type="hidden" value="form_login">
  9. <input type="submit" name="Submit" value="Valider">   
  10. </td>                                                             </form>


Merci par avance,
Francois

Reply

Marsh Posté le 24-03-2005 à 11:44:50   

Reply

Marsh Posté le 24-03-2005 à 16:11:15    

quand tu fais ca:  
# echo"<script>\n
#     window.location.href='./admin.php3';\n
#     </script>"
 
tu perd ta session (sauf si c'est dans un cookie mais je n'en suis même pas sûr!) et en plus tu te limites à javascript....
 
remplace par
header("Location: admin.php3?PHPSESSID=".session_id());
 
-avantage:
 * javascript n'étant pas solicité, pas besoin qu'il soit activé pour que ca marche
 * le code de redirection s'exécute directement sur le serveur, donc est plus rapide
 
-incovénient: aucun ;-)


Message édité par rompi le 24-03-2005 à 16:11:34
Reply

Marsh Posté le 24-03-2005 à 16:28:21    

ben inconvénient que tu ne doit rien envoyer avant, donc tu peux pas afficher de truc du genre "Vous allez etre rediriger automatiquement...etc..."  
mais il est clair que comme toi je préfère de loin cette solution (JS j'aime po ça, c'est pas sur le serveur donc c'est pas moi qui controle :()


---------------
- Xav - ...There are no crimes when there are no laws... -- Xav's World
Reply

Marsh Posté le 24-03-2005 à 16:59:00    

Sinon balise meta http-equiv ;)

Reply

Sujets relatifs:

Leave a Replay

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