Column count doesn't match value count at row

Résolu
AWare -  
jeangilles Messages postés 816 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

Je suis en train de créer un espace membre, en php et j'ai une erreur que je ne comprend pas qui s'affiche :

insert into egw_agw_accounts values (1,"qzkqsa6l7uppka0f602y","brutus","tagaok12","brutus.mechant@gmail.com")Column count doesn't match value count at row 1.

Voici le tronçons de code concérné:

                                // CREATION D'UN IDENTIFIANT ALEATOIRE
                                $taille = 20;
                                $lettres = "abcdefghijklmnopqrstuvwxyz0123456789";
                                srand(time());
                                for ($i=0;$i<$taille;$i++)
                                {
                                    $id.=substr($lettres,(rand()%(strlen($lettres))),1);
                                }

                                // ON RECHERCHE L'ID MAXIMUM DE LA TABLE
                                $requete=mysql_db_query($sql_bdd,"select max(account_id) from egw_agw_accounts",$db_link) or die(mysql_error());
                                $idmax=mysql_result($requete,0,"max(account_id)");

                                // INSERTION DANS LA TABLE
                                $idnew=$idmax+1;
                                echo "insert into egw_agw_accounts values ($idnew,\"$id\",\"$pseudo_membre\",\"$passe_membre\",\"$email\")";
                                $requete=mysql_db_query($sql_bdd,"insert into egw_agw_accounts values ($idnew,\"$id\",\"$pseudo_membre\",\"$passe_membre\",\"$email\")",$db_link) or die(mysql_error());


                                // CHAMPS SUPLEMENTAIRES, compl&#65533;tez la requ&#65533;te pr&#65533;c&#65533;dente en ajoutant les variables et en respectant l'ordre des colonnes de la table. Exemple :
                                // insert into membre values ($idnew,\"$id\",\"$pseudo_membre\",\"$passe_membre\",\"$email\",\"$ville\")
                                //
                                // REDIRECTION VERS LA PAGE D'ENTREE DE L'ESPACE MEMBRE
                                echo "Merci, vous &#65533;tes bien enregistr&#65533;. Cliquez <a href=\"$zone_membre?id=$id\">ici</a> pour entrer dans votre espace priv&#65533;.";


Merci pour l'attention que vous porterez à mon soucis
Configuration: Linux
Firefox 3.0.10

6 réponses

  1. jeangilles Messages postés 816 Date d'inscription   Statut Membre Dernière intervention   186
     
    Ca veut dire que dans ta requete d'insertion tu as mis trop/pas assez de valeurs à mettre dans la table (il doit te manquer un champs ou tu en as un de trop)

    on peut voir comment est faite ta table egw_agw_accounts ?
    0
  2. AWare
     
    Oui bien sure , la voici :

    egw_agw_accounts nom de la table
    account_id identifiant d'un utilisateur
    account_name représentant le nom d’utilisateur du visiteur
    account_pwd mot de passe d'un utilisateur
    account_mail représentant l’adresse e-mail du visiteur
    account_inscription représentant le timestamp de la date d’inscription
    account_active nous informera si le compte est actif ou non
    account_type type du compte utilisateur (client, ou salarié)
    account_clef_activation représentera la clef permettant d’activer le compte utilisateur

    Que dois je faire? suis-je vraiment obligé de mettre tout les champs dans mon insert ?
    0
  3. jeangilles Messages postés 816 Date d'inscription   Statut Membre Dernière intervention   186
     
    Non, tu peux aussi définir les champs de la table que tu veux remplir
    par exemple là ca donnerai quelquechose du genre :

    insert into egw_agw_accounts(account_id,account_clef_activation,account_name,account_pwd,account_mail) values (1,"qzkqsa6l7uppka0f602y","brutus","tagaok12","brutus.mechant@gmail.com")

    (je suppose que qzkqsa6l7uppka0f602y correspond à la clef d'activation ^^)
    0
  4. AWare
     
    aie aie aie ...ça ne marche toujours pas -_-...
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. AWare
     
    C'est bon j'ai résolut le problème :D!

    Maintenant j'au une petite question, comment faire pour que le message suivant ne s'affiche pas ainsi:
     Merci, vous êtes bien enregistré. Cliquez ici pour entrer dans votre espace privé. 


    mais ainsi :
     Merci, vous êtes bien enregistré. Cliquez ici pour entrer dans votre espace privé. 
    0
  7. jeangilles Messages postés 816 Date d'inscription   Statut Membre Dernière intervention   186
     
    Une solution serait de définir le charset Windows-1252 :

    dans ton head, tu rajoutes la ligne suivante :
    <meta http-equiv="Content-type" content="text/html;charset=WINDOWS-1252" />
    0