online 1
gast (50)

/ Forum / Skripte(PHP,ASP,Perl...)

Skripte(PHP,ASP,Perl...)Skripte(PHP,ASP,Perl...)

Fragevon ricc vom 13.01.2020, 18:42 Options

Per PHP mehrere MySQL-Tabellen erstellen - er macht nur die Erste!

Hallo!

Ich möchte per PHP in einem Zug mehrere MySQL-Tabellen erstellen. Die Verbindungseinstellungen sind alle richtig, und er beginnt zu arbeiten, allerdings wird nur die erste Tabelle erstellt, die zweite nicht. Der Code, der nachfolgt wird aber wieder ausgeführt!

// Tabelle "_users" erstellen
$sql = "CREATE TABLE ".$db_prefix."_users (
`userid` INT( 5 ) NOT NULL AUTO_INCREMENT PRIMARY KEY,
`usergroup` INT( 1 ) NOT NULL,
$result = mysql_query($sql);

// Tabelle "_gebete" erstellen
$sql = "CREATE TABLE ".$db_prefix."_gebete (
`gebetid` BIGINT( 20 ) NOT NULL AUTO_INCREMENT PRIMARY KEY,
`titel` TEXT NOT NULL,
`inhalt` TEXT NOT NULL,
) ENGINE = MYISAM";
$result = mysql_query($sql);

echo "Fertig!";


Das "Fertig" wird wieder ausgegeben, aber die Tabelle "_gebete" wird nicht erstellt; nur die Tabelle "_users".

Weis jemand, wieso?
Danke im Voraus!

Lg, ricc


Antwort schreiben

Antwort 1 von Supermax vom 13.01.2020, 19:08 Options

vor dem ersten mysql_query() fehlt anscheinend eine Zeile

Antwort 2 von ricc vom 13.01.2020, 19:14 Options

Was ist falsch?

Antwort 3 von katy vom 13.01.2020, 19:53 Options

Hallo ricc,

Supermax hatte es doch schon gesagt: in deinem Quellcode fehlt etwas, und zwar zwischen
`usergroup` INT( 1 ) NOT NULL,
und
$result = mysql_query($sql);

Im zweiten Quellcodeteil steht dort die Zeile
) ENGINE = MYISAM";

katy

Antwort 4 von ricc vom 13.01.2020, 20:37 Options

Ach so! Sorry. Das ist nur hier falsch, weil ich im Mittelteil etwas gekürzt habe.
In meiner Datei steht das schon richtig drinnen.
Also an dem liegt es nicht!

Habt ihr noch andere Ideen? Es muss etwas ganz einfaches sein, denn es fehlt ja auf den ersten Blick nichts, oder?

Lg, ricc

Antwort 5 von Supermax vom 13.01.2020, 21:29 Options

Wird keine Fehlermeldung ausgegeben?

Vielleicht schließt du versehentlich in dem weggelassenen Programmteil die SQL-Verbindung? Poste doch mal den kompletten Code, dann tun sich alle Beteiligten leichter.

Antwort 6 von ricc vom 13.01.2020, 21:37 Options

$db_prefix = $_POST['db_prefix'];

// Verbindung zur Datenbank herstellen
$connection = mysql_connect($db_host, $db_user, $db_pwd) /* or die("Ihre Eingaben zur Verbindungsherstellung mit dem Datenbank-Server sind fehlerhaft!") */;
mysql_select_db($db_datenbank, $connection) /* or die("Die Verbindung ist hergestellt. Allerdings kann die angegebene Datenbank nicht gefunden werden!") */;

// Tabelle "_settings" erstellen
$sql =  "CREATE TABLE ".$db_prefix."_settings (
	`erstellt` VARCHAR( 18 ) NOT NULL PRIMARY KEY,,
	`von` VARCHAR( 20 ) NOT NULL,
	`email` VARCHAR ( 50 ) NOT NULL
	) ENGINE = MYISAM";
$result = mysql_query($sql);

// Tabelle "_users" erstellen
$sql =  "CREATE TABLE ".$db_prefix."_users (
	`userid` INT( 5 ) NOT NULL AUTO_INCREMENT PRIMARY KEY,
	`usergroup` INT( 1 ) NOT NULL,
	`username` VARCHAR( 20 ) NOT NULL,
	`password` VARCHAR( 50 ) NOT NULL,
	`email` VARCHAR( 35 ) NOT NULL,
	`lastlogin` VARCHAR( 25 ) NOT NULL,
	`sessionid` VARCHAR( 100 ) NOT NULL,
	`regip` VARCHAR( 13 ) NOT NULL
	) ENGINE = MYISAM";
$result = mysql_query($sql);

// Tabelle "_gebete" erstellen
$sql =  "CREATE TABLE ".$db_prefix."_gebete (
	`gebetid` BIGINT( 20 ) NOT NULL AUTO_INCREMENT PRIMARY KEY,
	`titel` TEXT NOT NULL,
	`inhalt` TEXT NOT NULL,
	`kategorie` INT( 5 ) NOT NULL,
	`erstellt` VARCHAR( 18 ) NOT NULL,
	`von` VARCHAR( 20 ) NOT NULL,
	) ENGINE = MYISAM";
$result = mysql_query($sql);

// Tabelle "_gebete_kategorien" erstellen
$sql =  "CREATE TABLE ".$db_prefix."_gebete_kategorien (
	`kategorieid` INT( 5 ) NOT NULL AUTO_INCREMENT PRIMARY KEY,
	`titel` TEXT NOT NULL,
	`erstellt` VARCHAR( 18 ) NOT NULL,
	`von` VARCHAR( 20 ) NOT NULL,
	) ENGINE = MYISAM";
$result = mysql_query($sql);

echo "Alle Tabellen erstellt!";

Antwort 7 von ricc vom 13.01.2020, 21:38 Options

Also: die erste Tabelle wird immer erstellt, die weiteren nicht. Aber zum Schluss wird "Alle Tabellen angelegt!" ausgegeben!

Antwort 8 von ricc vom 13.01.2020, 22:26 Options

Problem gelöst:
bei den weiteren Tabellen stand nach dem letzten NOT NULL immer ein Komma, das darf da nicht hin!

Trotzdem danke für die Bemühungen!
Lg, ricc

Ähnliche Themen

Dropdown php MySQL
R0bin  03.02.2007 - 249 Hits - 2 Antworten

PHP 5 läuft nicht
Phillip  17.02.2007 - 129 Hits - 1 Antwort

Suche in mehreren Tabellen
Chiyo  23.08.2007 - 81 Hits - 6 Antworten

PHP und DBF Datenbank - geht das?
Claudia1975  08.11.2007 - 119 Hits - 1 Antwort

Perl mit MySQL?
TByte  09.05.2008 - 72 Hits - 36 Antworten

Hinweis

Diese Frage ist schon etwas älter, Sie können daher nicht mehr auf sie antworten. Sollte Ihre Frage noch nicht gelöst sein, stellen Sie einfach eine neue Frage im Forum..

Neue Einträge

Version: supportware 1.9.150 / 10.06.2022, Startzeit:Mon Jan 26 01:23:17 2026