Erreur SQL (URGENT)

Voir dernière réponse !

Voilà, merci d'avance pour votre aide !

PS : Je suis nul en PHP !
Lepetitwindows56

5 réponses

  • Votes
  • Date
  • Date décroissante
  1. Ce type d'erreur correspond plutôt à une erreur de syntaxe en PHP.
    Qu'y a-t-il à la ligne 47 ?
    1. Salut, je pense que tu as des erreurs sur cette lignes:

      (isset($_POST['pass_confirm'])) echo htmlentities(trim($_POST['pass_confirm'])); ?>"><br />


      deja isset, c'est plutot
      if(isset($_POST['pass_confirm']))


      Apres le reste de la ligne "echo htmlentities" je sais pas triop a quoi ça correspond, mais d'apres moi il y a d'autres erreurs.
      1. A la ligne 47, il y a :
        E-mail: <input type="text" name="email" value="Indiquez votre email" />

        Lepetitwindows56
        1. Remplace cette partie :
          Confirmation du mot de passe : <input type="password" name="pass_confirm" value="<?php if  
          E-mail: <input type="text" name="email" value="Indiquez votre email" />  
          (isset($_POST['pass_confirm'])) echo htmlentities(trim($_POST['pass_confirm'])); ?>"><br />  
          

          par ca :
          Confirmation du mot de passe : <input type="password" name="pass_confirm" value=" 
          <?php  
          if (isset($_POST['pass_confirm'])) 
              echo htmlentities(trim($_POST['pass_confirm'])); ?> 
          "><br /> 
          E-mail: <input type="text" name="email" value="Indiquez votre email" />  


          Il a free, il a tout compris !
          1. Ca fonctionne pas : une fois quand c'est inscrit, on arrive sur l'espace membre et quand on se déconnecte et qu'on se reconnecte : ca met Compte non reconnu !

            Je pense que c'est dû au code, parce que dans la BD c'est comme ça :

            Cliquer sur le lien de l'image : https://i65.servimg.com/u/f65/14/55/95/30/img_sq10.jpg J'ai mis dans un encadré noir ce qui me paraissait louche !

            La table que j'ai ajouter est la suivante :
            CREATE TABLE membre ( 
            id int(11) NOT NULL auto_increment, 
            login text NOT NULL, 
            pass_md5 text NOT NULL, 
            email varchar(100) NOT NULL, 
            PRIMARY KEY (id) 
            ) TYPE=MyISAM;


            Et le code de la page inscription.php :
            <?php 
            // on teste si le visiteur a soumis le formulaire 
            if (isset($_POST['inscription']) && $_POST['inscription'] == 'Inscription') { 
             // on teste l'existence de nos variables. On teste également si elles ne sont pas vides 
             if ((isset($_POST['login']) && !empty($_POST['login'])) && (isset($_POST['pass']) && !empty($_POST['pass'])) && (isset($_POST['pass_confirm']) && !empty($_POST['pass_confirm'])) && (isset($_POST['email']) && !empty($_POST['email']))) {  
              // on teste les deux mots de passe 
              if ($_POST['pass'] != $_POST['pass_confirm']) { 
               $erreur = 'Les 2 mots de passe sont différents.'; 
              } 
              else { 
               $base = mysql_connect ('sql.free.fr', 'expomatique', 'mila56ma'); 
               mysql_select_db ('expomatique', $base); 
            
               // on recherche si ce login est déjà utilisé par un autre membre 
               $sql = 'SELECT count(*) FROM membre WHERE login="'.mysql_escape_string($_POST['login']).'"'; 
               $req = mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error()); 
               $data = mysql_fetch_array($req); 
            
               if ($data[0] == 0) { 
                $sql = 'INSERT INTO membre VALUES("", "'.mysql_escape_string($_POST['login']).'", "'.mysql_escape_string(md5($_POST['pass'])).'", "'.mysql_escape_string($_POST['email']).'")'; 
                session_start(); 
                $_SESSION['login'] = $_POST['login']; 
                header('Location: membre.php'); 
                exit(); 
               } 
               else { 
                $erreur = 'Un membre possède déjà ce login.'; 
               } 
              } 
             } 
             else { 
              $erreur = 'Au moins un des champs est vide.'; 
             } 
            } 
            ?> 
            <html> 
            <head> 
            <title>Inscription</title> 
            </head> 
            
            <body> 
            Inscription à l'espace membre :<br /> 
            <form action="inscription.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 /> 
            Confirmation du mot de passe : <input type="password" name="pass_confirm" value=" 
            <?php 
            if (isset($_POST['pass_confirm'])) 
            echo htmlentities(trim($_POST['pass_confirm'])); ?> 
            "><br /> 
            E-mail: <input type="text" name="email" value="Indiquez votre email" />  
            <input type="submit" name="inscription" value="Inscription"> 
            </form> 
            <?php 
            if (isset($erreur)) echo '<br />',$erreur; 
            ?> 
            </body> 
            </html>


            Merci d'avance !
            Lepetitwindows56