Seite 2 von 2

Lösung: Template Vorkonfiguration spinnt

Verfasst: Fr 15. Feb 2013, 18:10
von Faar
Hi René,
du meinst, bevor ich eine neue Datenbank Connection aufmache, soll ich die Variablen erstmal zuweisen, damit die danach schon zur Verfügung stehen?
Und beim Output?

Aber die Lösung beim MySQL Problem mit zwei Datenbanken ist einfacher als ich dachte:

Am Anfang kommt $link2 = mysql_connect('localhost', 'mysql_user', 'mysql_password', TRUE);

Das TRUE ist extrem wichtig an der Sache, weil da eine neue Verbindung zum MysQL Server aufgemacht wird und nicht die von Contenido verwendet wird.
Danach dann einfach die zweite Datenbank ansprechen: mysql_select_db('database2', $link2)

und schon wird auf dem MySQL-Server schön sauber getrennt, welche Anfrage wohin geht.

Zum Schluss habe ich dann noch explizit diese Verbindung jeweils beendet: mysql_close($link2)

Nun funktioniert das mit dem Template (es spinnt nicht mehr) und die Seitenausgabe läuft bis zum Ende durch.
Mir scheint, damit ist das Problem gelöst mit mehreren Datenbanken.
Aber erst muss ich alle Programme nochmal durcharbeiten, bevor ich sicher sein kann :(

Ich könnte noch die speziellen Datenbankabfragen auf DB2 noch mit mysql_query($sql, $link2) ausschmücken, aber scheints funktioniert es auch so.
Offenbar übernimmt da der MySQL Server die Zuordnung zur DB, weil es der gleiche Server ist.

Re: Gelöst:Template Vorkonfiguration spinnt bei zwei Datenba

Verfasst: Fr 15. Feb 2013, 18:30
von Spider IT
Hmmm, ja, ich habe die Klasse DB_Contenido genutzt, dabei ist der Parameter aber nicht vorgesehen :(
Trotzdem, danke für den Tipp, den können bestimmt auch Andere brauchen.

Gruß
René

Re: Gelöst:Template Vorkonfiguration spinnt bei zwei Datenba

Verfasst: Fr 15. Feb 2013, 19:50
von Faar
Ich denke, dass es durchaus für andere nützlich ist, wenn welche diese Probleme mit zweierlei Datenbanken haben, und weil der MySQL Server der gleiche ist mit gleichen Zugangsdaten. Dann wird nämlich die gleiche Verbindung benützt und keine neue aufgebaut, aber auf die andere Datenbank geschaltet. Und das ist fatal für alle nachfolgende Abfragen auf die erste Datenbank.

Praktischerweise hätte man auch einfach die Datenbanken nach Bedarf vor jeder Abfrage umswitchen können mit select_db.
Müsste auch funktionieren, habs nicht getestet.

Bei Datenbank die auf verschiedenen MySQL-Servern sitzen, dürfte das weniger ein Problem sein, weil da immer eine neue Verbindung aufgemacht wird. Da sind die Zugangsdaten schon anders.
Vielleicht ist es aber ganz nützlich, wenn man bei solchen Konstrukten dann immer auch die Verbindung im mysql_query($sql, $link) mit angibt, damit sicher ist, dass die Abfrage auch wirklich auf diese Verbindung läuft.

Jedenfalls spukt es jetzt (diesbezüglich) keine Fehler mehr aus, es läuft :)

VG,
Frank

Re: Gelöst:Template Vorkonfiguration spinnt bei zwei Datenba

Verfasst: Fr 8. Mär 2013, 12:43
von derSteffen
Mhm,

das könnte auch dieses Problem erkären: http://forum.contenido.org/viewtopic.ph ... 70#p156747 denn hier ist es auch so, dass wenn man Templatekonfigurationen beim zweiten Mandanten vornimmt, dass diese auch im ersten Mandanten geändert werden. Ich habe dann - weil es überschaubar war - den Kategoriebaum des zweiten Mandanten komplett dubliziert und mit diesen Inhalten weitergearbeitet.

MfG Steffen