Login sur Formulaire

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 : Login sur Formulaire

Re: Login sur Formulaire

par AB » 22 sept. 2011, 16:36

Plutôt de l'avis de Yosh... surtout qu'il s'agit de session utilisateur où l'on utilise donc déjà des sessions :)

Re: Login sur Formulaire

par Yosh » 22 sept. 2011, 15:51

Pour moi, c'est les sessions le plus pratique, les cookies pouvant être refusés.

Au passage le session_start() ne peut fonctionner dans ton code, il y a du code HTML au dessus, je t'invite à lire la doc.

Re: Login sur Formulaire

par Mazarini » 22 sept. 2011, 08:31

Bonjour,

Pour conserver des informations, tu as la solution des cookies et celle des sessions

Pour garder un nom d'utilisateur, les cookies me semble bien (cf http://php.net/manual/fr/function.setcookie.php)

Login sur Formulaire

par Folken77 » 22 sept. 2011, 04:16

Bonjour à tous !

Je viens vous demander de l'aide pour un problème qui me turlupine pas mal. Voila donc, imaginez une page index.php sur laquelle je me logue et qui une fois que j'ai appuyé sur le bouton me renvoie directement sur la page suivante send.php. Jusque là rien de sorcier. Une fois que j'ai terminé ce que j'avais à faire sur ma page send, je souhaite revenir à l'index et ne pas afficher le formulaire mais uniquement Bienvenue "Pseudo de la personne".

J'ai dors et déjà réussi à conserver le pseudo pour la page send.php, mais dès lors que je clique sur un lien qui me renvoie sur mon index, il m'est impossible de trouver une formule pour tout faire coïncider. J'ai testé pas mal d'idée qui me sont venus, mais je vous avoue que c'est le flou intégrale #-o

Je vous mets ci-joint le code de mon index (naissant, cela va sans dire).
<html>
    <head>
    <title>Get Out Of My Ad</title>
    </head>
     
    <body>
  <?php
  
       if (isset($_POST['connexion']) && $_POST['connexion'] == 'Connexion') { 
       if ((isset($_POST['login']) && !empty($_POST['login'])) && (isset($_POST['pass']) && !empty($_POST['pass']))) { 
     
          $base = mysql_connect ('localhost', 'root', ''); 
          mysql_select_db ('getoutofmyad', $base); 
          
          $sql = 'SELECT count(*) FROM users WHERE login="'.mysql_escape_string($_POST['login']).'" AND password="'.mysql_escape_string($_POST['pass']).'"'; 
          $req = mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error()); 
          $data = mysql_fetch_array($req); 
          
          mysql_free_result($req); 
          mysql_close(); 
          
         
          if ($data[0] == 1) { 
             session_start(); 
             $_SESSION['login'] = $_POST['login']; 
             header('Location: send.php'); 
             exit(); 
          } 
          elseif ($data[0] == 0) { 
             $erreur = 'Compte ou mot de passe non reconnu.'; 
          } 
          else { 
             $erreur = 'Probème dans la base de données : plusieurs membres ont les mêmes identifiants de connexion.'; 
          } 
       } 
       else { 
          $erreur = 'Au moins un des champs est vide.'; 
       }  
	   
	   }	   
    ?>
   
    Connexion à l'espace membre :<br />
    <form action="index.php" method="post">
    Login : <input type="text" name="login" value="<?php if (isset($_POST['login'])) echo htmlentities(trim($_POST['login'])); ?>"><br />
    Mot de passe : <input type="password" name="pass" value="<?php if (isset($_POST['pass'])) echo htmlentities(trim($_POST['pass'])); ?>"><br />
    <input type="submit" name="connexion" value="Connexion">
    </form>
    <a href="inscription.php">Vous inscrire</a>
    <?php
    if (isset($erreur)) echo '<br /><br />',$erreur;  
    ?>

    </body>
    </html> 
D'avance je vous remercie pour vos réponses.

Le NB.