Maison >développement back-end >tutoriel php >Pourquoi est-ce que j'obtiens l'erreur « Le nombre de colonnes ne correspond pas au nombre de valeurs à la ligne 1 » dans PHP MySQL ?
Cette erreur se produit lorsque le nombre de valeurs que vous tentez d'insérer dans un La table de base de données ne correspond pas au nombre de colonnes de la table.
Dans le code que vous avez fourni, vous essayez d'insérer 8 valeurs dans une table de 9 colonnes :
<code class="php">$query = sprintf("INSERT INTO dbname (id, Name, Description, shortDescription, Ingredients, Method, Length, dateAdded, Username) VALUES ('', '%s', '%s', '%s', '%s', '%s', '%s', '%s')", mysql_real_escape_string($name), mysql_real_escape_string($description), mysql_real_escape_string($shortDescription), mysql_real_escape_string($ingredients), //mysql_real_escape_string($image), mysql_real_escape_string($length), mysql_real_escape_string($dateAdded), mysql_real_escape_string($username));</code>
Pour résoudre l'erreur, vous devez ajouter la valeur manquante pour la colonne "Méthode". Voici le code modifié :
<code class="php">$query = sprintf("INSERT INTO dbname (id, Name, Description, shortDescription, Ingredients, Method, Length, dateAdded, Username) VALUES ('', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s')", mysql_real_escape_string($name), mysql_real_escape_string($description), mysql_real_escape_string($shortDescription), mysql_real_escape_string($ingredients), mysql_real_escape_string($method), // Added the Method value mysql_real_escape_string($length), mysql_real_escape_string($dateAdded), mysql_real_escape_string($username));</code>
Après avoir effectué cette modification, vous ne devriez plus rencontrer l'erreur « Le nombre de colonnes ne correspond pas au nombre de valeurs à la ligne 1 ».
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!