-3
このクエリの間違いは何ですか?MySQL - 列数が1行目の値と一致しません
$sql=mysql_query("INSERT INTO xml_daten VALUES('','$EAN','$Warengruppe','$Bezeichnung','$Langtext','$Zusatz_1','$Zusatz_2','$Zusatz_3','$Menge','$Einheit','$VE_Einheit','$VE_Menge','$Artikelbild','$St_Satz','$EK_Preis','$VK_Preis_1','$Soll_Bestand','$Ist_Bestand','$Preisangabe','$SN_Angabe')") or die("Fehler ".mysql_error());
表ザッツあなたのテーブルには、21列があり
CREATE TABLE `xml_daten` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`EAN` varchar(200) COLLATE latin1_german2_ci NOT NULL,
`Warengruppe` varchar(200) COLLATE latin1_german2_ci NOT NULL,
`Bezeichnung` text COLLATE latin1_german2_ci NOT NULL,
`Langtext` text COLLATE latin1_german2_ci NOT NULL,
`Zusatz1` varchar(255) COLLATE latin1_german2_ci NOT NULL,
`Zusatz2` varchar(255) COLLATE latin1_german2_ci NOT NULL,
`Zusatz3` varchar(255) COLLATE latin1_german2_ci NOT NULL,
`Menge` varchar(5) COLLATE latin1_german2_ci NOT NULL,
`Einheit` varchar(10) COLLATE latin1_german2_ci NOT NULL,
`VE_Einheit` varchar(255) COLLATE latin1_german2_ci NOT NULL,
`VE_Menge` varchar(255) COLLATE latin1_german2_ci NOT NULL,
`Artikelbild` varchar(255) COLLATE latin1_german2_ci NOT NULL,
`St_Satz` varchar(10) COLLATE latin1_german2_ci NOT NULL,
`EK_Preis` varchar(255) COLLATE latin1_german2_ci NOT NULL,
`VK_Preis` varchar(255) COLLATE latin1_german2_ci NOT NULL,
`VK_Preis_1` varchar(255) COLLATE latin1_german2_ci NOT NULL,
`Soll_Bestand` varchar(20) COLLATE latin1_german2_ci NOT NULL,
`Ist_Bestand` varchar(20) COLLATE latin1_german2_ci NOT NULL,
`Preisangabe` varchar(255) COLLATE latin1_german2_ci NOT NULL,
`SN_Angabe` varchar(255) COLLATE latin1_german2_ci NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_german2_ci;
テーブル定義は何ですか?テーブル内のカラム数と挿入しようとしている値の数を計算してから、piteを取得する前にMySQLiまたはPDOでプリペアドステートメントでバインド変数を使用する方法を学んでください –
**警告**: PHPを学ぶだけで、[mysql_query'](http://php.net/manual/en/function.mysql-query.php)インタフェースを使わないでください。それはPHP 7で削除されたのでとてもひどいと危険です。[PDOのようなものは学ぶのが難しくない](http://net.tutsplus.com/tutorials/php/why-you-should-be-using-phps -pdo-for-database-access /)と[PHP The Right Way](http://www.phptherightway.com/)のようなガイドがベストプラクティスを説明しています。あなたのユーザーデータは**適切にエスケープされていない**(http://bobby-tables.com/php.html)であり、[SQLインジェクションのバグ](http://bobby-tables.com/)があります。悪用される。 – tadman
MySQLは通常、非常に具体的なエラーを表示します。たいていの場合、エラーが発生した場合にのみ、正確な文字が表示されます。 – tadman