Vinzenz Mai: MySQL-Error

Beitrag lesen

Hallo Sebastian,

So sieht die Speisekarte übrigens aus (z.Zt. noch IE only) ...

bitte die Navigation schleunigst an die richtige Stelle bringen ;-)

$sql_str='';
$sql_str.="DROP TABLE IF EXISTS $menu_file;";

Das ist eine SQL-Anweisung

$sql_str.="CREATE TABLE IF NOT EXISTS $menu_file (
id int(11) NOT NULL auto_increment,
number varchar(50) default NULL,
category varchar(50) default NULL,
description\_de varchar(255) default NULL,
ingredients\_de varchar(255) default NULL,
description\_en varchar(255) default NULL,
ingredients\_en varchar(255) default NULL,
euro varchar(50) default NULL,
KEY ID (id)
)
TYPE=MyISAM AUTO_INCREMENT=333 ;";

jetzt enthält $sql_str _zwei_ SQL-Anweisungen. Wie wahsaga Dir bereits schrieb, kann mysql_query nur _eine_ Query absetzen. Das Problem an dieser Stelle könntest Du mit TRUNCATE TABLE beheben.

$result=mysql_query($sql_str);

$sql_str='';
$sql_str.="INSERT INTO $menu\_file VALUES($counter, $number, $category\_descr, $descr\_de, $ingr\_de, $descr\_en, $ingr\_en, $price\_euro);\n";

... viele INSERT INTO-Anweisungen. Schau Dir im MySQL-Handbuch, Abschnitt INSERT die Syntax für Multiline-INSERT an. Du kannst kommagetrennt in runde Klammern gefasste Wertlisten übergeben. Dann hast Du nur _ein_ SQL-Statement.

Freundliche Grüße

Vinzenz