Partage
  • Partager sur Facebook
  • Partager sur Twitter

mon code marche pas :|

Sujet résolu
    25 octobre 2006 à 18:49:44

    bonjour
    voilà mon code marche pas il m'affiche que le spot a été affiché mais rien n'est créé dans la bdd!! help plz

    <?php
    //Identifiants de connexion à la base de données.
    mysql_connect("xxxxxxx", "xxxxx", "xxxxx");
    mysql_select_db("xxxxxxx");

    //On vérifie que la variable $_POST['inscription'] existe
    if (isset($_POST['ajouter']))
    {
            //Si les variables contenant le pseudo, le mot de passe et l'email existent et contiennent quelque chose.
            if (isset($_POST['spot'], $_POST['dpt'], $_POST['ville'], $_POST['acces'], $_POST['eau'], $_POST['surface'], $_POST['desc']) && !empty($_POST['spot']) && !empty($_POST['ville']) && !empty($_POST['acces']) && !empty($_POST['surface']) && !empty($_POST['desc']))
            {
                   //Si le pseudo est supérieur à 3 caractères et inférieur à 35 caractères.
                    if (strlen(trim($_POST['spot'])) > 1 && strlen(trim($_POST['spot'])) < 40)
                    {
                                //Si le pseudo est supérieur à 3 caractères et inférieur à 35 caractères.
                    if (strlen(trim($_POST['ville'])) > 1 && strlen(trim($_POST['ville'])) < 40)
                    {
                            //Si le mot de passe est supérieur à 4 caractères.
                            if (strlen(trim($_POST['acces'])) > 1 && strlen(trim($_POST['acces'])) < 1000)
                            {
                                                            if (strlen(trim($_POST['desc'])) > 1 && strlen(trim($_POST['desc'])) < 1000)
                                    {
                                                            if (strlen(trim($_POST['surface'])) > 1 && strlen(trim($_POST['surface'])) < 255)
                                    {
                                                           
                                    //Mesure de sécurité.
                                    $spot = htmlentities(addslashes($_POST['spot']));
                                    $dpt = htmlentities(addslashes($_POST['dpt']));
                                    $ville = htmlentities(addslashes($_POST['ville']));
                                                                    $acces = htmlentities(addslashes($_POST['acces']));
                                                                    $eau = htmlentities(addslashes($_POST['eau']));
                                    $surface = htmlentities(addslashes($_POST['surface']));
                                                                    $desc = htmlentities(addslashes($_POST['desc']));
                                                                    $pseudo = $_SESSION['pseudo'];
                                                                    $date = time();
                                                                   
                                                                    $sql = mysql_query("SELECT COUNT(*) AS nb_spot FROM SK8LISTE_spots WHERE spot='".$spot."'");
       
       //La on regarde que le nombre est différent que zéro
       if (mysql_result($sql,0,'nb_spot') == 0)
       {
                                     
                                                                                   
                                                                                    //Connexion à mysql.
                                            mysql_connect("xxxxxxxxx", "xxxxxxxxx", "xxxxxxxxx");
    mysql_select_db("xxxxxxx");
                                           
                                            //On éxécute la requête qui enregistre un nouveau membre.
                                            mysql_query("INSERT INTO SK8LISTE_spots (id, spot, dpt, ville, acces, pseudo, date, desc, surface, eau) VALUES ('', '".$spot."', '".$dpt."', '".$ville."', '".$acces."', '".$pseudo."', '".$date."', '".$desc."', '".$surface."', '".$eau."')");
                                           
                                            //Déconnection de mysql.
                                            mysql_close();
                                                                                    echo "Le spot a bien été ajouté!";
                                                                                   
                                                                                   
                                    }
                                    else
                                    {
                                            echo 'Spot déjà enregistré!';
                                    }
                                                                    }
                                                                    else
                                                                    {
                                                                    echo 'Erreur: la description de la surface est trop grande!';
                            }
                                                                    }
                                                                    else
                                                                    {
                                                                    echo 'Erreur: la description est trop longue!';
                            }
                                                    }
                            else
                            {
                                    echo 'Erreur: la description de l\'accès est trop longue!';
                            }
                    }
                    else
                    {
                            echo '
    Erreur: le nom de la ville est trop court ou trop long!';
                    }
                                    } else
                                    {
                                    echo '
    Le nom du spot est trop court ou trop long!';
                                    }
            }
            else
            {
                    echo '
    Erreur: Vous avez oublié de renseigner une ou plusieurs informations!';
            }
    }
    ?>
    • Partager sur Facebook
    • Partager sur Twitter
      26 octobre 2006 à 9:38:30

      Bonjour

      Déja, tu a mis deux fois le mysql_connect() :p

      De mémoire, php n'accepte qu'une seule connexion en même temps
      //Haut de la page
      <?php
      mysql_connect("host","login","mdp");
      mysql_select_db("bdd");

      //Tout le basard de la page, toutes les requetes, ect..


      mysql_close(); //On ferme la connexion a la fin de la page
      ?>
      //Bas de la page


      En esperant que cela pourra t'aider ;)
      • Partager sur Facebook
      • Partager sur Twitter
        26 octobre 2006 à 9:43:45

        Il me semble qu'il faut mettre le mysql_connect à chaque fois que l'on ouvre la alise php <?.

        EDIT : Oubliez la ligne juste au-dessus...
        • Partager sur Facebook
        • Partager sur Twitter
          26 octobre 2006 à 9:46:40

          heureusement que non lol
          • Partager sur Facebook
          • Partager sur Twitter
            26 octobre 2006 à 18:02:27

            j'ai une autre page sur le même modéle que celle la, mais elle marche, meme avec 2 connexions!
            • Partager sur Facebook
            • Partager sur Twitter
              26 octobre 2006 à 18:09:51

              Jai u le meme pb que toi Imrik , ta pris le tuto : realisation d'un espace membre simple et tas voulu enlevé la confirmation par mail ! et après ca te fai une page blanche ??? ! si tu veu je te passe mon script ke jai déplanté jsé plus koment, c le meme ke le tien tora juste les identifian a la bbd a changer et le nom de ta bbd ? ;)
              • Partager sur Facebook
              • Partager sur Twitter
                26 octobre 2006 à 18:14:13

                euh je ne sais plus d'ou je tiens ce code, mais comme j'ai dis: j'ai une page exactement pareille ou presque a part les variables qui changent et celle ci marche! et non je n'ai pas de page blanche, il me dit le spot est bien ajouté mais dans ma bdd: rien de nouveau!
                • Partager sur Facebook
                • Partager sur Twitter
                  26 octobre 2006 à 18:21:27

                  Alors change un truk pour voir moi ca a marché, tu modifie l requete mysql :
                  mysql_query("INSERT INTO SK8LISTE_spots (id, spot, dpt, ville, acces, pseudo, date, desc, surface, eau) VALUES ('', '".$spot."', '".$dpt."', '".$ville."', '".$acces."', '".$pseudo."', '".$date."', '".$desc."', '".$surface."', '".$eau."')");
                  et tu mest
                  mysql_query("INSERT INTO SK8LISTE_spots VALUES ('', '".$spot."', '".$dpt."', '".$ville."', '".$acces."', '".$pseudo."', '".$date."', '".$desc."', '".$surface."', '".$eau."')");
                  Moi ca venai de ca.
                  • Partager sur Facebook
                  • Partager sur Twitter
                    26 octobre 2006 à 18:37:57

                    non ce n'est pas ça. j'ai essayé.
                    je ne sais pas quel est le pb, je n'arrive pas a le remarquer mais il doit etre bete.
                    • Partager sur Facebook
                    • Partager sur Twitter
                      26 octobre 2006 à 18:59:30


                      Jte propose si ta pas d'autres solutions ce script, il marche parfaitement, ta juste a changer les identifian, le nom de ta bbd, et ce ke tu veu d'autres.

                      <?php
                      //Démarrage de la session (à mettre avant tout code xhtml)
                      session_start();

                      //Si la variable $_SESSION['logged'] n'existe pas on la créée.
                      if (!isset($_SESSION['logged']))
                      {
                      $_SESSION['logged'] = false;
                      }
                      if ($_SESSION['logged'] === true)
                      {
                       header("location: membres.php");
                       }


                      //Inclusion du fichier contenant les identifiants de connexion à la base de données.
                      require("config.inc.php");

                      //Connexion à la base de données.
                      mysql_connect($host, $username, $password);
                      mysql_select_db($bdd_name);


                      if ($_SESSION['logged'] === false)
                      {
                         if (isset($_COOKIE['pseudo'], $_COOKIE['mot_passe']))
                         {
                            //Vérification du pseudo.
                            $pseudo = htmlspecialchars($_COOKIE['pseudo']);
                            $mot_passe = htmlspecialchars($_COOKIE['mot_passe']);
                                     
                            //Requête comptant le nombre de pseudos $_POST['pseudo']
                            $sql = mysql_query("SELECT COUNT(*) AS nb_pseudo FROM membres WHERE pseudo='".$pseudo."'");
                               
                             //Si le pseudo existe.
                             if (mysql_result($sql,0,'nb_pseudo') == 1)
                             {
                                   //Vérification du mot de passe
                                   //Information sur le compte du membre.
                                   $sql_infos = mysql_query("SELECT id, mot_passe FROM membres WHERE pseudo='".$pseudo."'");
                                   $donnees = mysql_fetch_array($sql_infos);
                                             
                                   //Comparaison du mot de passe et vérification que le compte est confirmé.
                                   if ($mot_passe == $donnees['mot_passe'])
                                   {
                                         //Tout est bon, on connecte le membre.
                                         $_SESSION['logged'] = true;
                                         
                                         //Création de 2 variables de sessio, contenant des informations sur le membre.
                                         $_SESSION['id'] = $donnees['id']; //Id du membre.
                                         $_SESSION['pseudo'] = $pseudo; //Pseudo du membre.
                                                             
                                         //Redirection vers la page membre.
                                         header("location: membres.php");
                                    }
                              }
                         }
                      }


                      //Si la variable $_POST['connexion'] (bouton submit du formulaire) et la variable $_SESSION['logged'] vaut false (déconnecté) existent.
                      if (isset($_POST['connexion']) && $_SESSION['logged'] === false)
                      {
                              //Vérification des autres variables.
                              if (isset($_POST['pseudo'],$_POST['mot_passe']) && !empty($_POST['pseudo']) && !empty($_POST['mot_passe']))
                              {
                                      //Vérification du pseudo.
                                      $pseudo = htmlspecialchars($_POST['pseudo']);
                                      $mot_passe = htmlspecialchars($_POST['mot_passe']);
                                     
                                      //Requête comptant le nombre de pseudos $_POST['pseudo']
                                      $sql = mysql_query("SELECT COUNT(*) AS nb_pseudo FROM membres WHERE pseudo='".$pseudo."'");
                                     
                                      //Si le pseudo existe.
                                      if (mysql_result($sql,0,'nb_pseudo') == 1)
                                      {
                                              //Vérification du mot de passe
                                              //Information sur le compte du membre.
                                              $sql_infos = mysql_query("SELECT id, mot_passe FROM membres WHERE pseudo='".$pseudo."'");
                                              $donnees = mysql_fetch_array($sql_infos);
                                             
                                             
                                              //Comparaison du mot de passe.
                                              if ($mot_passe == $donnees['mot_passe'])
                                              {
                                                              if (isset($_POST['souvenir']) && $_POST['souvenir'] == 'on')
                                                              {
                                                                  //Temps d'expiration des cookies (1 an).
                                                                  $expire = time() + 3600 * 24 * 365;

                                                                  setcookie('pseudo', $pseudo, $expire);
                                                                  setcookie('mot_passe', $mot_passe, $expire);
                                                              }

                                                              //Tout est bon, on connecte le membre.
                                                              $_SESSION['logged'] = true;
                                                             
                                                              //Création de 2 variables de session, contenant des informations sur le membre.
                                                              $_SESSION['id'] = $donnees['id']; //Id du membre.
                                                              $_SESSION['pseudo'] = $pseudo; //Pseudo du membre.
                                                             
                                                              //Redirection vers la page membre.
                                                              header("location: membres.php");
                                                     
                                                     
                                              }
                                              else
                                                      echo 'Erreur : le mot de passe est incorrect !';
                                      }
                                      else
                                              echo 'Erreur : le pseudo n\'existe pas !';
                              }
                              else
                                      echo '
                      Erreur : veuillez remplir tous les champs !';
                      }
                      ?>

                      <html>
                              <head>
                                      <title>Accueil</title>
                              </head>
                              <body>
                                      <h1>Bienvenue sur mon site</h1>
                                     
                                      <p>
                                              <a href="inscription.html">Inscription</a>
                                      </p>
                                     
                                      <form method="post" action="index.php">
                                              <label for="pseudo">Pseudo : <input type="text" name="pseudo" id="pseudo" /></label>
                                              <label for="mot_passe">Mot de passe : <input type="password" name="mot_passe" id="mot_passe" /></label>
                                              <label for="souvenir">Se souvenir de moi ? <input type="checkbox" name="souvenir" id="souvenir" /></label>
                                              <input type="submit" name="connexion" value="Se connecter" />
                                      </form>
                              </body>
                      </html>
                      <?php
                      //Déconnection de la base de données.
                      mysql_close();
                      ?>
                      • Partager sur Facebook
                      • Partager sur Twitter
                        26 octobre 2006 à 19:42:40

                        c'est bon ça marche je ne sais pas ce que j'ai changé qui a fait marcher mais ça marche!
                        par contre j'ai un autre pb sur mon site: les sessions
                        • Partager sur Facebook
                        • Partager sur Twitter
                          26 octobre 2006 à 19:48:01

                          Citation : Imrik


                          par contre j'ai un autre pb sur mon site: les sessions


                          Lol tarrive pas a les enregistrer ou a les faire marché ? ( ps c koi l'adresse de ton site )
                          • Partager sur Facebook
                          • Partager sur Twitter
                            26 octobre 2006 à 19:53:14

                            en fait je pense que mes donnees de session sont crées, mais quand je veux les extraire pour les afficher ou les utiliser, je ne recupere rien du tout
                            www.sk8liste.com
                            • Partager sur Facebook
                            • Partager sur Twitter

                            mon code marche pas :|

                            × 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