Maison >base de données >tutoriel mysql >Pourquoi mon instruction PHP MySQL INSERT génère-t-elle une erreur « Le nombre de colonnes ne correspond pas au nombre de valeurs à la ligne 1 » ?
Comment résoudre l'erreur « Le nombre de colonnes ne correspond pas au nombre de valeurs à la ligne 1 » dans PHP et MySQL
Lors de la tentative d'insertion de données dans une base de données MySQL utilisant PHP, vous pouvez rencontrer l'erreur « Le nombre de colonnes ne correspond pas au nombre de valeurs à la ligne 1. » Cette erreur indique que le nombre de valeurs que vous essayez d'insérer ne correspond pas au nombre de colonnes défini dans le tableau.
Pour résoudre ce problème, examinez attentivement le code à l'origine de l'erreur. Dans l'extrait de code fourni :
$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));
Vous avez défini 9 champs dans l'instruction INSERT, mais n'avez fourni des valeurs que pour 8 d'entre eux. La valeur manquante semble concerner le champ « Méthode ». Pour résoudre le problème, vous devez ajouter la valeur du champ "Méthode".
Assurez-vous que vous avez correctement échappé toutes les valeurs pour empêcher l'injection SQL. Vous pouvez utiliser la fonction mysql_real_escape_string pour échapper aux valeurs.
En fournissant des valeurs pour toutes les colonnes définies dans le tableau, vous pourrez résoudre l'erreur « Le nombre de colonnes ne correspond pas au nombre de valeurs à la ligne 1 » et insérez avec succès des données dans votre base de données MySQL.
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!