install.php abändern: Weitere Tabellen autom. einfügen

Eine Neuinstallation von phpBB 2.0 wird auf phpBB.de nicht mehr unterstützt.
Siehe auch Entwicklungs-Ende von phpBB 2.0 - Auswirkungen auf phpBB.de
Forumsregeln
phpBB 2.0 hat das Ende seiner Lebenszeit überschritten
phpBB 2.0 wird nicht mehr aktiv unterstützt. Insbesondere werden - auch bei Sicherheitslücken - keine Patches mehr bereitgestellt. Der Einsatz von phpBB 2.0 erfolgt daher auf eigene Gefahr. Wir empfehlen einen Umstieg auf phpBB 3.1, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.

Eine Neuinstallation von phpBB 2.0 wird auf phpBB.de nicht mehr unterstützt.
Siehe auch Entwicklungs-Ende von phpBB 2.0 - Auswirkungen auf phpBB.de
Benutzeravatar
Faser
Ehemaliges Teammitglied
Beiträge: 1651
Registriert: 20.09.2001 02:00
Kontaktdaten:

install.php abändern: Weitere Tabellen autom. einfügen

Beitrag von Faser »

Hallo,


ich bin gerade dabei, eine Installations-Version für ein modifiziertes phpBB zu schreiben, wofür ich die standardmäßige Installations-Routine von phpBB benutzen wollte (./install/install.php).

Die in mein Board eingebauten Modifikationen haben teilweise auch MySQL-Tabellen angelegt, die nun natürlich auch automatisch mitinstalliert werden sollen.

Da phpBB die Datei mysql_schema.sql nutzt (im Verzeichnis ./install/schemas/), um die DB-Struktur zu installieren, habe ich meine 23 weiteren Tabellen einfach hinten angehängt.

Statt 27 Tabellen müssten also jetzt 50 erstellt werden, phpBB installiert aber immer nur die 27 Tabellen.


In der install.php wird die Datei mysql_schema.sql, also der SQL-Dump, in ihre einzelnen Befehle zerlegt (die Funktion dazu findet sich in ./includes/sql_parse.php).
Anschließend werden alle Befehle mit einer "for"-Schleife einzeln ausgeführt. Als Begrenzung für diese Schleife wird sizeof($sql_query) benutzt (sizeof() ist ein Alias für count()), wobei $sql_query die einzelnen Befehle der mysql_schema.sql beinhaltet.
Dieses sizeof($sql_query) ergibt komischerweise auch nur 27.
Auch wenn ich die Begrenzung mit 50 ersetze, werden auch nur 27 Tabellen installiert.

Woran kann das liegen? Es sieht ja wohl so aus, als ob meine SQL-Befehle fehlerhaft wären.
Ich habe schon alle SQL-Befehle überprüft, eigentlich sollte alles funktionieren.


Ich habe mal die mysql_schema.sql hochgeladen, vielleicht findet ja jemand etwas:
- http://217.20.117.106/ablage/nikolaus/mysql_schema.sql
Es geht dort um die Daten ab dem Hinweis
# --------------------------------------------------------
# The following tables are added by modifications
# that are installed into iStudy.
# --------------------------------------------------------
(findet sich ziemlich weit am Ende)


Vielen Dank schon einmal für eure Hilfe, ich bin total verzweifelt... Argh. :oops:
Faser
QUADRATDESIGN. Eine runde Sache.
Besuchen Sie unsere Agentur für Webdesign unter http://quadratdesign.de
Benutzeravatar
CC_FH-Bielefeld
Mitglied
Beiträge: 62
Registriert: 13.10.2004 21:34
Wohnort: Bielefeld
Kontaktdaten:

Beitrag von CC_FH-Bielefeld »

ich hab zwar null ahnung, aber nur um mal lapidar zu checken ob die befehle korrekt sind, hab ichs mal in meine sql importiert...

ich hab 50 vollständige Tabellen!

wäre es eine alternative, das einfügen der datei mit einem selbstgeschriebenen php-skript zu realisieren? (okay, ist keine echte lösung, eher nen mieses goto :roll: )

gruß Tim
Benutzeravatar
Faser
Ehemaliges Teammitglied
Beiträge: 1651
Registriert: 20.09.2001 02:00
Kontaktdaten:

Beitrag von Faser »

Wenn ich nicht weiter komme, bleibt mir nichts anderes übrig.

Im Grunde müssen die Befehle auch alle richtig sein, da sie ja aus phpMyAdmin exportiert wurden...
QUADRATDESIGN. Eine runde Sache.
Besuchen Sie unsere Agentur für Webdesign unter http://quadratdesign.de
Acid
Ehrenadmin
Beiträge: 12195
Registriert: 26.04.2001 02:00
Wohnort: Berlin

Beitrag von Acid »

Nur um dich noch mehr zu verwirren, bei mir werden die 50 Tabellen auch alle sauber erstellt. :wink:

Eventuell nochmal versuchen (ohne die install.php angepasst zu haben).
Benutzeravatar
Faser
Ehemaliges Teammitglied
Beiträge: 1651
Registriert: 20.09.2001 02:00
Kontaktdaten:

Beitrag von Faser »

Hmm? Hast du meine mysql_schema.sql zur Installation benutzt? In phpMyAdmin werden sie sowieso alle normal erstellt... :cookie:
QUADRATDESIGN. Eine runde Sache.
Besuchen Sie unsere Agentur für Webdesign unter http://quadratdesign.de
Acid
Ehrenadmin
Beiträge: 12195
Registriert: 26.04.2001 02:00
Wohnort: Berlin

Beitrag von Acid »

Ja, ich hatte deine mysql_schema.sql in den schema-Ordner kopiert :wink: und das Board neuinstalliert.
Benutzeravatar
Faser
Ehemaliges Teammitglied
Beiträge: 1651
Registriert: 20.09.2001 02:00
Kontaktdaten:

Beitrag von Faser »

Hmm, dann werde ich das nocheinmal versuchen mit der originalen Install-Datei.

Mit der Standard mysql_schema.sql funktioniert es komischerweise auch mit meiner modifizierten install.php.

Naja, ich versuche es einfach nochmal.
QUADRATDESIGN. Eine runde Sache.
Besuchen Sie unsere Agentur für Webdesign unter http://quadratdesign.de
Benutzeravatar
Faser
Ehemaliges Teammitglied
Beiträge: 1651
Registriert: 20.09.2001 02:00
Kontaktdaten:

Beitrag von Faser »

So langsam drehe ich total durch :D:

Wenn ich meinen Inhalt von der mysql_schema.sql herauskopiere und in phpMyAdmin in das SQL-Feld einfüge, werden alle 50 Tabellen erstellt.

Wenn ich allerdings in phpMyAdmin die mysql_schema.sql als Datei im Import-Dialog auswähle, werden nur 27 Tabellen erstellt.

Wie kann denn das?
QUADRATDESIGN. Eine runde Sache.
Besuchen Sie unsere Agentur für Webdesign unter http://quadratdesign.de
Christian_W
Ehemaliges Teammitglied
Beiträge: 5703
Registriert: 26.02.2004 00:09

Beitrag von Christian_W »

Faser hat geschrieben:Wenn ich allerdings in phpMyAdmin die mysql_schema.sql als Datei im Import-Dialog auswähle, werden nur 27 Tabellen erstellt.
Ich konnte es nicht glauben aber das hatte ich auch gerade.
Faser hat geschrieben:Wie kann denn das?
Keine Ahnung. Vieleicht irgendwelche Zeichen die Dein Editor nicht so speichert wie es phpMyAdmin erwartet.
Exportiere doch mal die ganzen Tabellen und benutze dann die als mysql_schema.sql. Also nicht Deine Erweiterung in die Original-Datei kopieren, sondern die Tabellenstruktur in eine neue Datei exportieren.

Gruß Christian
---
Benutzeravatar
Faser
Ehemaliges Teammitglied
Beiträge: 1651
Registriert: 20.09.2001 02:00
Kontaktdaten:

Beitrag von Faser »

Dann kommt leider das hier:
install.php hat geschrieben:ährend der Installation trat ein Fehler auf

Beim Update der Datenbank trat ein Fehler auf

Could not insert board_startdate :: INSERT INTO forum_config (config_name, config_value) VALUES ('board_startdate', 1097941666) :: 871 :: /var/www/spielecke/installversion/install/install.php

Could not insert default_lang :: INSERT INTO forum_config (config_name, config_value) VALUES ('default_lang', 'german') :: 878 :: /var/www/spielecke/installversion/install/install.php

Could not insert default_lang :: UPDATE forum_config SET config_value = 'xniggox@web.de' WHERE config_name = 'board_email' :: 895 :: /var/www/spielecke/installversion/install/install.php

Could not insert default_lang :: UPDATE forum_config SET config_value = '/spielecke/installversion/' WHERE config_name = 'script_path' :: 895 :: /var/www/spielecke/installversion/install/install.php

Could not insert default_lang :: UPDATE forum_config SET config_value = '80' WHERE config_name = 'server_port' :: 895 :: /var/www/spielecke/installversion/install/install.php

Could not insert default_lang :: UPDATE forum_config SET config_value = '217.20.117.106' WHERE config_name = 'server_name' :: 895 :: /var/www/spielecke/installversion/install/install.php

Could not update admin info :: UPDATE forum_users SET username = 'admin', user_password='21232f297a57a5a743894a0e4a801fc3', user_lang = 'german', user_email='xniggox@web.de' WHERE username = 'Admin' :: 906 :: /var/www/spielecke/installversion/install/install.php

Could not update user_regdate :: UPDATE forum_users SET user_regdate = 1097941666 :: 913 :: /var/www/spielecke/installversion/install/install.php
Das war ja der Grund, warum ich es überhaupt so kompliziert gemacht hatte...


EDIT: Es werden dann übrigens garkeine Daten erstellt...
QUADRATDESIGN. Eine runde Sache.
Besuchen Sie unsere Agentur für Webdesign unter http://quadratdesign.de
Gesperrt

Zurück zu „phpBB 2.0: Installation und Update“