Partage
  • Partager sur Facebook
  • Partager sur Twitter

requete invalide??

Sujet résolu
    25 mars 2011 à 13:32:53

    bonjour,

    je suis peu etre bete aveugle ou je ne sais pas mais je n'arrive plus a faire aucune requete
    exemple
    type="php">$sql = 'INSERT INTO cat_5_mn VALUES ("", "", "'.$_POST['url'].'","ALLEZ_LES_FILLES", "","'.$user->data['username'].'")';  
      
    
                    mysql_query($sql) or die('Erreur SQL !'.$sql.'<br '.mysql_error());

    ma table
    Image utilisateur

    et j'ai toujours la meme erreur

    Erreur SQL !INSERT INTO cat_5_mn VALUES ("", "", "http://weetix.fr/z/vFbxG/aurores","ALLEZ_LES_FILLES", "","annick")
    Incorrect integer value: '' for column 'id' at row 1
    • Partager sur Facebook
    • Partager sur Twitter
      25 mars 2011 à 14:00:18

      Salut,

      Es tu sur d'avoir d'avoir le droit de laisser le champ vide sur ID ? Parce que si c'est ta clé primaire et que c'est vide, c'est normal qui soit pas content, du moins je crois.
      Je veux pas dire de bêtise, j'utilise plus les requêtes en dur... Retente en mettant une valeur dans ID et dis nous se qu'il te répond ?
      • Partager sur Facebook
      • Partager sur Twitter
        25 mars 2011 à 14:20:06

        id est auto_increment donc elle doit augmente toute seule
        avant ca fonctionnait et plus aujourd'hui
        seulement j'ai rajoute un champ a cette table qui provient d'un select d'une autre table et me demande si ce n'est pas ca qui me le fait beuger?

        et pendant que j'y suis comme je suis debutante en php

        j'aimerais savoir si dans une table je pouvais regroupe ma table lien et ma table compteur clic au total ca ferait 15 champs ainsi ce serait peut etre plus facile pour moi pour faire toutes les requete

        merci
        • Partager sur Facebook
        • Partager sur Twitter
          25 mars 2011 à 14:43:17

          Ben le principe de la base de donnée c'est de structurer les données au maximum, si on met tout dans une même table sa devient très vite le bazars et sa n'a plus d'utilité.

          Pour en revenir a la requête, partout ou tu veux que se soit vide essaye de remplacer par la valeur "null". C'est super susceptible, en général.

          Fait une requête avec tout les champs rempli pour voir si sa passe. Si sa passe pas, je te conseil de recréer ta table. Si sa passe, c'est que certain champ n'accepte pas d'être vide !
          • Partager sur Facebook
          • Partager sur Twitter
            25 mars 2011 à 16:13:29

            Salut
            L'idéal est de spécifié les noms de commande sans mettre la clé primaire (ni celles ou tu ne mets pas de valeurs)
            <?php $sql = 'INSERT INTO cat_5_mn (url, com, username) VALUES ("'.$_POST['url'].'","ALLEZ_LES_FILLES")';
            mysql_query($sql) or die('Erreur SQL !'.$sql.'<br '.mysql_error());
            


            Par contre cela implique que les colonnes non listées aient la possibilités d'être NULL


            Citation

            Fait une requête avec tout les champs rempli pour voir si sa passe. Si sa passe pas, je te conseil de recréer ta table. Si sa passe, c'est que certain champ n'accepte pas d'être vide !


            Ouai ou alors il regarde comment est la structure de la table quitte à la modifié si besoin
            • Partager sur Facebook
            • Partager sur Twitter
              25 mars 2011 à 17:03:15

              bon je viens de refaire toutes mes tables mais avec les () et ensuite les valeurs ca fonctionne ouf enfin un truc de bon
              maintenant toujours une requete mais un peu plus compliquée celle ci
              en gros je veux afficher les liens
              que si le total_clic(correspondant a leur speudo) est supérieur a 15
              donc j'ai bien trouve celle ci qui fonctionne (enfin apparament)
              requette d'affichage

              $sql = 'SELECT clic.id AS clicid, total_clic, clic.username AS username, 
                cat_5_mn.id AS cat_5_mnid, nom_vote ,url, com FROM clic, cat_5_mn
                WHERE clic.username=cat_5_mn.username AND total_clic>15';
              

              mais mon compteur clic lui ne fonctionne plus car je ne sais pas comment avoir l'id du lien pour la redirection

              et celui du compteur
              <a href="'. append_sid('click.php?url= '.$data['id'].'').'" target=\"_blank\">'.$data['nom_vote'].' </a></strong><strong>'.$data['id'].'</strong></td>
                         
                       <td><strong>'.$data['com'].'
              


              si vous avez une idée ?? pour mon id
              • Partager sur Facebook
              • Partager sur Twitter
                25 mars 2011 à 18:11:57

                Citation : gribouille34


                mais mon compteur clic lui ne fonctionne plus car je ne sais pas comment avoir l'id du lien pour la redirection
                et celui du compteur


                Ce n'est pas clic.id ?

                Mais comme tu utilisé un alias dans la requête, il faut utiliser ce dernier. A mon avis, il suffit de remplacer dans le lien id par clicid et ça marchera ;) (ou alors tu enlève l'alias qui ne sert à rien)
                • Partager sur Facebook
                • Partager sur Twitter
                  25 mars 2011 à 18:27:06

                  pourquoi il ne sert a rien l'alias
                  clic est une table et cat_5_mn en est une autre

                  dans la table clic j'ai total_clic

                  et dans la table cat_5_mn j'ai les nom_vote,url, com et

                  username qui est commum au deux


                  • Partager sur Facebook
                  • Partager sur Twitter
                    25 mars 2011 à 18:38:24

                    Citation : gribouille34

                    Incorrect integer value: '' for column 'id' at row 1



                    Ton serveur MySQL est configuré correctement (c'est rare) et donc il considère que "" n'est pas un entier valide, ce qui est normal.

                    • Partager sur Facebook
                    • Partager sur Twitter
                      26 mars 2011 à 13:05:17

                      bonjour,

                      voilà j'ai trouve

                      $sql = 'SELECT * FROM  clic, cat_5_mn WHERE clic.username=cat_5_mn.username AND total_clic>=0';
                      


                      merci pour votre aide
                      • Partager sur Facebook
                      • Partager sur Twitter

                      requete invalide??

                      × 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