Ich betreue eine 2Sprachige Seite. In den Modulen wird zur Übersetzung mi18n() verwendet - contenido bietet die Textpassagen auch zur Übersetzung an.
An einigen Stellen lösen aber Datenbankzugriffe irgendeinen Fehler aus, der dann die Anzeige der korrekten Sprache verhindert. Dieses verhalten konnte ich in mehren Modulen reproduzieren.
da contenidodaten und modul-daten in getrennten DBs liegen baue ich eine neue verbindung auf:
Code: Alles auswählen
if ( !isset( $dbT5 ) ) {
$host =...
$database = ...
$user = ...
$password = ...
$dbT5 = new DB_Contenido( $host, $database, $user, $password );
}
Code: Alles auswählen
$strQuery = "SELECT ..";
$dbT5->query( $strQuery );
if ( $dbT5->next_record() ) {
...
}
erfolgt im gleichen Modul eine weitere Datenbankabfrage gegen die gleiche Datenbank unter nutzung der gleichen Verbindung passiert irgendetwas magisches und mi18n(); gibt nur noch texte in der originalsprache aus.
ich habe testweise ein Modul auf Datenbankzugriffe ohne diese Contenido-Funktionalität umgestellt, dann funktioniert alles bestens. Leider ist das eine ungünstige alternative, weil einige tausend zeilen Code in allen Modulen umgestellt werden müssten.
Das system wurde kürzlich erst von 4.6. aktualisiert und vorher gab es diese Probleme nicht.
Woran kann das liegen? Habe ich vielleicht irgendwo einen denkfehler.
Wenns ein Contenido-Problem ist - gibt es einen Workaround?