Partage
  • Partager sur Facebook
  • Partager sur Twitter

Inscription impossible dans une BDD

    8 mars 2007 à 18:17:39

    Bonjour,

    J'ai un problème avec mon script. Mon script est une page d'enregistrement de compte. Le problème est qu'après validation, il n'y a aucun enregistrement dans la base de donnée !

    Voiçi le code :

    <?php
    include("password.php");
    mysql_connect($adresse, $nom, $motdepasse);
    mysql_select_db($database);
    session_start();
           
            $i = 0;

            //Vérification du pseudo
            $nombrepseudo = mysql_result(mysql_query("SELECT COUNT(*) FROM forum_membres WHERE membre_pseudo = '".$_POST['pseudo']."'"), 0);
            if($nombrepseudo != 0)
            {
                    $pseudo_erreur1 = "Votre pseudo est déjà utilisé par un membre";
                    $i++;
            }
            if (strlen($_POST['pseudo']) < 3 || strlen($_POST['pseudo']) > 15)
            {
                    $pseudo_erreur2 = "Votre pseudo est soit trop grand soit trop petit";
                    $i++;
            }
            //Vérification du mdp
            if ($_POST['password'] != $_POST['confirm'] || empty($_POST['confirm']) || empty($_POST['password']))
            {
                    $mdp_erreur = "Votre mot de passe et votre confirmation diffèrent ou sont vides";
                    $i++;
            }       
            //Vérification de l'adresse email

            //Il faut que l'adresse email n'ait jamais été utilisée

            $nombremail = mysql_result(mysql_query("SELECT COUNT(*) FROM forum_membres WHERE membre_email = '".$_POST['email']."'"), 0);

            if ($nombremail!= 0)
            {
                    $email_erreur1 = "Votre adresse email est déjà utilisée par un membre";
                    $i++;
            }
            //On vérifie la forme maintenant
            if (!preg_match("#^[a-z0-9._-]+@[a-z0-9._-]{2,}\.[a-z]{2,4}$#", $_POST['email']) || empty($_POST['email']))
            {
                    $email_erreur2 = "Votre adresse E-Mail n'a pas un format valide";
                    $i++;
            }
            //Vérification de l'adrese msn
            if (!preg_match("#^[a-z0-9._-]+@[a-z0-9._-]{2,}\.[a-z]{2,4}$#", $_POST['msn']) && !empty($_POST['msn']))
            {
                    $msn_erreur = "Votre adresse MSN n'a pas un format valide";
                    $i++;
            }
            //Vérification de la signature
            if (strlen($_POST['signature']) > 200)
            {
                    $signature_erreur = "Votre signature est trop longue";
                    $i++;
            }

            if (!empty($_FILES['avatar']['size']))
            {
                    //On définit les variables :
                    $maxsize = 10024; //Poid de l'image
                    $maxwidth = 100; //Largeur de l'image
                    $maxheight = 100; //Longueur de l'image
                    $extensions_valides = array( 'jpg' , 'jpeg' , 'gif' , 'png', 'bmp' ); //Liste des extensions valides
                  
                    if ($_FILES['avatar']['error'] > 0)
                    {
                            $avatar_erreur = "Erreur lors du tranfsert de l'avatar : ";
                    }
                    if ($_FILES['avatar']['size'] > $maxsize)
                    {
                            $i++;
                            $avatar_erreur1 = "Le fichier est trop gros : (<strong>".$_FILES['avatar']['size']." Octets</strong>    contre <strong>".$maxsize." Octets</strong>)";
                    }

                    $image_sizes = getimagesize($_FILES['avatar']['tmp_name']);
                    if ($image_sizes[0] > $maxwidth OR $image_sizes[1] > $maxheight)
                    {
                            $i++;
                            $avatar_erreur2 = "Image trop large ou trop longue : (<strong>".$image_sizes[0]."x".$image_sizes[1]."</strong> contre <strong>".$maxwidth."x".$maxheight."</strong>)";
                    }
                  
                    $extension_upload = strtolower(substr(  strrchr($_FILES['avatar']['name'], '.')  ,1));
                    if (!in_array($extension_upload,$extensions_valides) )
                    {
                            $i++;
                            $avatar_erreur3 = "Extension de l'avatar incorrecte";
                    }
            }

    if ($i == 0) // Si i est vide, il n'y a pas d'erreur
    {

            echo'<fieldset><legend>Inscription terminée</legend>';
            echo'<p>Bienvenue <strong>'.$_POST['pseudo'].'</strong> vous êtes maintenant inscrit sur le forum</p>';
            echo'<p>Cliquez <a href="./index.php">ici</a> pour revenir à la page d accueil</p></fieldset>';

            if (isset($_FILES['avatar']['size']))
            {
                    //On déplace l'avatar
                    $avatar = time();
                    $nomavatar = str_replace(' ','',$avatar).".".$extension_upload;
                    $avatar = "./images/avatars/".str_replace(' ','',$avatar).".".$extension_upload;
                    move_uploaded_file($_FILES['avatar']['tmp_name'],$avatar);
            }
           
            //On vérifie que les champs ne continennent pas de html
            //Puis on crypte le mot de passe

            $signature = $_POST['signature'];
            $pseudo = $_POST['pseudo'];
            $email = $_POST['email'];
            $msn = $_POST['msn'];
            $website = $_POST['website'];
            $localisation = $_POST['localisation'];
            $pass = md5($_POST['password']);
                   
                    htmlentities($signature,ENT_QUOTES);
                    htmlentities($pseudo,ENT_QUOTES);
                    htmlentities($email,ENT_QUOTES);
                    htmlentities($msn,ENT_QUOTES);
                    htmlentities($website,ENT_QUOTES);
                    htmlentities($localisation,ENT_QUOTES);
           
            //On balance le tout dans notre table
                    $query = "INSERT INTO forum_membres (membre_id, membre_pseudo, membre_mdp, membre_email,membre_msn, membre_siteweb, membre_avatar, membre_signature, membre_localisation, membre_inscrit) VALUES ('','$pseudo' , '$pass' , '$email' ,'$msn' , '$website' , '$nomavatar' ,'$signature' ,'$localisation' )";
                    mysql_query($query);

    }
    else
    {
            echo'<fieldset><legend>Une ou plusieurs erreurs se sont produites pendant l\'incription</legend>';
            echo'
    <p>'.$i.' erreur(s)</p>';
            echo'
    <p>'.$pseudo_erreur1.'</p>';
            echo'
    <p>'.$pseudo_erreur2.'</p>';
            echo'
    <p>'.$mdp_erreur.'</p>';
            echo'
    <p>'.$email_erreur1.'</p>';
            echo'
    <p>'.$email_erreur2.'</p>';
            echo'
    <p>'.$msn_erreur.'</p>';
            echo'
    <p>'.$signature_erreur.'</p>';
            echo'
    <p>'.$avatar_erreur.'</p>';
            echo'
    <p>'.$avatar_erreur1.'</p>';
            echo'
    <p>'.$avatar_erreur2.'</p>';
            echo'
    <p>'.$avatar_erreur3.'</p>';
           
            echo'
    <p>Cliquez <a href="./register.php">ici</a> pour recommencer</h2></p></fieldset>';
    }
    ?>


    J'aimerais savoir ce qu'est le problème, merci !
    • Partager sur Facebook
    • Partager sur Twitter
      8 mars 2007 à 19:49:48

      il manque un argument dans la requête, tu lui d'insérer quelques chose dans le champs membre_inscrit mais tu ne lui donne pas la valeur
      • Partager sur Facebook
      • Partager sur Twitter
        8 mars 2007 à 20:02:22

        or die(mysql_error());
        • Partager sur Facebook
        • Partager sur Twitter
          8 mars 2007 à 20:21:09

          Merci Catalyse !

          Ca fonctionne bien maintenant !
          • Partager sur Facebook
          • Partager sur Twitter

          Inscription impossible dans une BDD

          × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
          × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
          • Editeur
          • Markdown