SmartyShark: Datenbank - Id´s über Localhost und externer Server

Beitrag lesen

Hi Sven,

danke erstmal für die Hilfe...

Ist schon geklärt, wieso die Objekte mal vier, mal fünf Parameter bekommen? Oder ist das wieder einer deiner Scherze?

Hi Sven, diesmal ist es kein Scherz. Diesmal ist es Todernst!
Das mit den fünf Parametern, lasse dich davon nicht verwirren.
Es sind immer fünf. Ich habe nur versehentlich bei den ersten zwei Anweisungen jeweils einen zusätzlichen "null" vergessen.

Tja, liegt wohl an der internen Funktionsweise der Klasse, deren Quellcode du ja wohlweislich geheim hältst. Vielleicht hilfts, den Code von innen nach hinten zu schleifen...

Es ist nicht geheim, ich will hier nur niemanden mit zuviel Code verwirren. In der Klasse wir ausser einem Connect und einem db_select
nichts weiter gemacht. Dann gibt die Klasse ein return des handles zurück. Das wars. Ich habe schon mehrere print_r und echo Ausgaben zur Kontrolle gemacht. Vom Programmaablauf scheint alles zu funktionieren.

Ich bekomme bei allen drei Anweisungen drei verschiedene Resource-IDs (13 - 15). Alle ids sind unterschiedlich. Das heisst die dritte ID
hat als Server die 111.111.122.201 etc. Also alles scheint ok zu sein.

Aber der Schein ist ein Trugschluß! Das ist kein Scherz Sven, ich weiss wirklich nicht was das sein kann.

Die Fehlermeldung ist:

Invalid query (Database error): Table 'iptable.kunden' doesn't exist

Der Fehler ist logisch. Den "iptable" ist die Datenbank von der dritten Anweisung. Kunden ist aber eine Tabelle auf der Datenbank auf dem Localhost. Deswegen findet er zu dem Handle nicht die Tabelle "Kunden". Soweit so gut. Das heisst die dritte Anweisung überschreibt
die Anweisungen davor. Obwohl ich explizit z.B. das Handle der ersten Anweisung benutze (also localhost), probiert er auf die Datenbank "iptable" der dritten Anweisung zuzugreifen.

Das einzig logische was mir momentan scheint ist, das sobald man eine Verbindung zu einem externen Datenbankserver macht nachdem man schon eine Verbindung hat und bevor man ein mysql_close macht, die letzte Verbindung als aktuell gesetzt wird.

Kann das sein? Gibt es da Abhilfe?

Gruss
SmartyShark