pragmaMx Support Forum

pragmaMx => Allgemeines => Thema gestartet von: Webfan in 12 Dezember 2007, 12:49:49

Titel: Datenbanken
Beitrag von: Webfan in 12 Dezember 2007, 12:49:49
Ich fummel mich jetzt schon einige Zeit dämlich mit buffer hier und ob_start da. In footer .php und im theme und überall.
Wie kann ich in einem Modul auf eine andere als die Pragmamx Datenbank zugreifen?

Wenn es nicht so einfach geht, wie geht es dann kompliziert?
(Sorry, wenn ich zu doof zum suchen bin, finde immer nur "geht nicht" und solche Ausreden)


Titel: Re: Datenbanken
Beitrag von: JoergK in 12 Dezember 2007, 18:46:30
Hi, ;)

Irgendwo im Forum gab's dazu mal ne kurze Anleitung von Andi - wenn mich jetzt nicht alles täuscht, find die aber im Moment nicht.

Grob gesagt sollte es so funzen:

- bestehende Verbindung schliessen
- neue Verbindung öffen
- notwendige Abfrage(n) tätigen
- neue Verbindung schliessen
- alte Verbindung wieder öffnen

Die notwendigen Functions dazu solltest du in der /includes/sql_layer.php finden. ;)

Wichtig ist, das bevor wieder irgend nen Seitenaufruf stattfindet, die alte DB-Verbindung geöffnet sein muss.
Titel: Re: Datenbanken
Beitrag von: Webfan in 12 Dezember 2007, 20:57:36
Ufff... vielen Dank erstmal JoergK!

So habe ich es nun geschafft:

####### DB SWITCH ###########
@sql_logout($dbi);
$dbi_2 = @sql_connect($dbserver_2, $dbuser_2, $dbpass_2);
if (empty($dbi)) {
    die("<br /><br />Selection from database failed!<br /><br />Kein Zugriff auf die Datenbank moeglich, bitte ueberpruefen Sie die Einstellungen.");
}
$db = mysql_select_db($dbname_2,$dbi_2 );
############################
         
                  // 2 Datenbank benutzen...

####### DB SWITCH ###########
@sql_logout($dbi);
$dbi = @sql_connect($dbhost, $dbuname, $dbpass);
if (empty($dbi)) {
    die("<br /><br />Selection from database failed!<br /><br />Kein Zugriff auf die Datenbank moeglich, bitte ueberpruefen Sie die Einstellungen.");
}
$dbi = @sql_select_db($dbi);

         
Ich muß mir das irgendwo an die Wand pinnen oder, sonst vergeß ich das wieder...
Die unterdrückten Fehlermeldungen sind eine Notice, daß eine Konstante schon definiert ist.
Den Layer Dings für die 2. Datenbank (also den ersten switch und die Abfragen danach) zu benutzen habe ich irgendwie nicht geschafft...
Aber so funktioniert es jedenfalls schonmal.

mfg
:)
Titel: Re: Datenbanken
Beitrag von: Eismann1976 in 14 Dezember 2007, 14:43:10
Schöne Sache.   :cul:

Hab ich auch mal probiert aber bin gescheitert. Ich glaub wenn ich es wieder brauch find ich es nur nichtmehr wieder. :red: