Seite 1 von 1

Nach Update falsche Datenbank trotz korrekter config.php

Verfasst: 13.06.2004 16:44
von MyFairTux
Hi, Wissende :)

Aaaalso:
Ich hab ein 2.0.6 gehabt und nun 2.0.8 installiert. Dabei habe ich das alte Board bis auf die Datenbanktabellen gelöscht, das neue aufgespielt und dort die config.php entsprechend geändert.

Die Startseite wird auch tadellos angezeigt, ich kann mich auch als admin unten auf der Startseite einloggen und Einstellungen vornehmen.

Klicke ich aber oben auf "Login" "Profil" etc. gibt es folgenden Fehler:
-----------------------------------------
Couldn't obtain category list.
DEBUG MODE
SQL Error : 1146 Tabelle 'usr_web10_1.phpbb_et_categories' existiert nicht
-----------------------------------------

Tja, das ist sehr schlau von phpBB, denn die Tabelle existiert dort wirklich nicht. Dort existiert überhaupt nichts von phpBB, weil in dieser Datenbank (usr_web10_1) andere Daten stehen ;)

Die Forentabellen befinden sich in usr_web10_2 und soweit ich das mit phpmyadmin verfolgen konnte, auch vollständig.
Offensichtlich findet phpBB ja auch die Kategorien, denn die Startseite wird korrekt angezeigt und im Admin-Bereich sind ebenfalls alle Daten sichtbar.

Die config.php sieht so aus:
---------------------------------------
<?php


// phpBB 2.x auto-generated config file
// Do not change anything in this file!

$dbms = 'mysql';

$dbhost = 'localhost';
$dbname = 'usr_web10_2';
$dbuser = 'web10';
$dbpasswd = 'xxxxxxxxxx';

$table_prefix = 'phpbb_et_';

define('PHPBB_INSTALLED', true);

?>
----------------------------------------

Daran sollte es also auch nicht liegen.

Wo kann denn der String "usr_web10_1" gespeichert sein?
In phpBB_et_config finde ich nichts, auch sonst in keiner Datei.

Sind die Tabellen zwischen 2.0.6 und 2.0.8 nicht kompatibel?

Ich bin echt ratlos, woher phpBB die Information nimmt, dass ich überhaupt eine zweite Datenbank habe und dann diese auch noch zu nutzen versucht...

Herzlichen Dank für jeden Hinweis,
Christoph

Verfasst: 13.06.2004 16:55
von PhilippK
Stimmt denn die URL in der Adresszeile?

Gruß, Philipp

Verfasst: 13.06.2004 16:58
von MyFairTux
Argh, ich glaub, ich habe den Fehler.

Da ich das Forum auf meiner Seite eingebunden habe und zusätzlich noch einen Shop betreibe, dessen Menü rechts dynamisch generiert wird, überschreibt der Shop (ja, genau, dessen Daten stehen in usr_web10_1 ;) ) wohl $dbname und das Verhängnis nimmt seinen Lauf.

Ich finde die Variablen- (und auch Klassennamen der CSS-Stile) sehr unglücklich gewählt. "$dbname" ist nicht sonderlich boardspezifisch - das fordert kollidierende Varibalen geradzu.

In den CSS-Klassen dasselbe: Wer das Forum in eine andere Seite einpflegen möchte, kollidiert zwangsläufig mit den Einstellungen des Boards (die ja teilweise sogar global eingestellt werden!).
Das ergibt letztendlich eine sehr unsaubere, fehlerträchtige Lösung.

Arbeiten die Entwickler in dieser Richtung an phpBB?
Eine erträgliche Lösung wäre z.B. ein Variablenpräfix "phpBB" oder am besten gleich ein eigener Namespace (Objekt etc.) - mit dem Datenbanktabellenpräfix wurde das ja schön vorgemacht ...

Warum hat man das nicht bei den Stilen und Variablen übernommen?

Ich finde das Board toll, aber da könnte man sich viel Ärger ersparen.

Viele Grüße,
Christoph :)

Verfasst: 14.06.2004 00:01
von MyFairTux
Hmmm, irgendwie komme ich trotzdem nicht weiter.

Also:
Ich hab overall_header und overall_footer geändert.
In Overall_header hab ich zwei neue Variable eingeführt, die ich in page_header durch ausführen von kopf.php und navigation.php meiner Seite fülle (mit output buffering). Dabei werden auch Shopfunktionen aufgerufen (zur Darstellung des Artikelmenüs).

Ich kann mir nur so erklären, dass das forum an die Datenbank 'usw_web10_1' kommt. Sonst wird die ja nirgends im Board verwendet.

Ich dachte nun, dass ich einfach mal "brutal" den Namen der Datenbank hart codiere in der db.php ganz unten beim sql-aufruf ...

Doch das Ergebnis ändert sich gar nicht - immer noch derselbe fehler mit derselben (falschen) Datenbank.

Gibt es noch weitere Aufrufe der Datenbank, die ich übersehen hab?

Was passiert eigentlich genau, wenn ich oben z.B. auf Login klicke?

Gibt es irgendwo eine Art Flussdiagramm mit den Dateinamen, damit man nachvollziehen kann wo was eingebunden wird ?

Ich bin echt ratlos, zumal das Board ja "fast" läuft :-/

Vielen Dank für jeden brauchbaren Hinweis!
Christoph

P.S.: URL? also, wenn ich Login klicke, wird /forum/login.php aufgerufen, das sieht ok aus

Verfasst: 07.10.2004 16:27
von THG
Ich stehe vor fast exakt dem selben Fehler und kann es mir auch nicht erklären.

Bevor ich also mein Problem in allen Details schildere: Hat sich denn für das Problem zwischenzeitlich eine Lösung gefunden?

Danke schonmal!