Warnung: file_put_contents(/home/www/web1/html/php_dev/test.txt) [function.file-put-contents]: failed to open stream: Permission denied in /home/www/web1/html/php_dev/sys/lib.activity.php (Zeile 58)
You have an error in your SQL syntax; [Archiv] - PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr
ebiz-webhosting
- Ad -
php-resource




Archiv verlassen und diese Seite im Standarddesign anzeigen :
You have an error in your SQL syntax;


 
sfischer
23-07-2010, 18:49 
 
Wenn ich die nachfolgende SQL-Anweisung im phpmyadmin eingebe funktioniert sie. Wenn ich sie allerdings in ein php-skript einbinde, krieg ich ne Fehlermeldung :{

Bitte helft mir!

INSERT INTO /*Geschlechter*/
geschlechter
(
id,
geschlecht,
anrede
)
VALUES
(
'1',
'm',
'Herr'
);

INSERT INTO
geschlechter
(
id,
geschlecht,
anrede
)
VALUES
(
'2',
'w',
'Frau'
);

INSERT INTO /*Benutzerlevel*/
benutzerlevel
(
id,
level
)
VALUES
(
'1',
'admin'
);

INSERT INTO
benutzerlevel
(
id,
level
)
VALUES
(
'2',
'user'
);

INSERT INTO /*Artikeltypen*/
artikeltypen
(
id,
typ
)
VALUES
(
'1',
'Artikel'
);

INSERT INTO
artikeltypen
(
id,
typ
)
VALUES
(
'2',
'Baugruppe'
);

INSERT INTO /*Bestell- oder Lagerware*/
bestelloderlager
(
id,
typ
)
VALUES
(
'1',
'Bestellware'
);

INSERT INTO
bestelloderlager
(
id,
typ
)
VALUES
(
'2',
'Lagerware'
);Das php-Skript sieht so aus:
<?php
require ("../dbconnect.inc.php"); //Datenbankverbindung
$query = " INSERT INTO /*Geschlechter*/
geschlechter
(
id,
geschlecht,
anrede
)
VALUES
(
'1',
'm',
'Herr'
);

INSERT INTO
geschlechter
(
id,
geschlecht,
anrede
)
VALUES
(
'2',
'w',
'Frau'
);

INSERT INTO /*Benutzerlevel*/
benutzerlevel
(
id,
level
)
VALUES
(
'1',
'admin'
);

INSERT INTO
benutzerlevel
(
id,
level
)
VALUES
(
'2',
'user'
);

INSERT INTO /*Artikeltypen*/
artikeltypen
(
id,
typ
)
VALUES
(
'1',
'Artikel'
);

INSERT INTO
artikeltypen
(
id,
typ
)
VALUES
(
'2',
'Baugruppe'
);

INSERT INTO /*Bestell- oder Lagerware*/
bestelloderlager
(
id,
typ
)
VALUES
(
'1',
'Bestellware'
);

INSERT INTO
bestelloderlager
(
id,
typ
)
VALUES
(
'2',
'Lagerware'
);
";


$result = mysql_query ($query) or die (mysql_error());
?>
Folgende Fehlermeldung bekomme ich:

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'INSERT INTO geschlechter ( id,' at line 15

Danke schonmal

 
h3ll
23-07-2010, 18:55 
 
Du kannst nur ein Query pro Aufruf ausführen.

 
wahsaga
23-07-2010, 18:55 
 
RTFM - http://php.net/manual/en/function.mysql-query.php:
mysql_query() sends a unique query (multiple queries are not supported) to the currently active database

Wenn du das alles in einem machen willst, musst du MySQLi nutzen, da gibt's die Methode mysqli::multi_query.
Wenn du das nicht willst, oder kein MySQLi zur Verfügung hast - dann musst du die Statements vorher auftrennen, und einzeln absetzen.

 
sfischer
23-07-2010, 19:29 
 
Ok, ich probiers mal. Vielen Dank.

- -

Alle Zeitangaben in WEZ +2. Es ist jetzt 17:01 Uhr.