Seite 1 von 1

Mehre Verbindungen mit MySQL

Verfasst: 14.04.2005 17:09
von tbf
Ich hatte ja schon zuvor das Problem geschildert.
Habe das Problem eingegrenzt.
Es liegt anscheinend daran, dass eine zweite aufgebaute Verbindung die zuerst aufgebaute Verbindung überschreibt.

Hier der Test:

Code: Alles auswählen

$conn = mysql_connect($sqlhost, $sqluser, $sqlpass);
$conn2 = mysql_connect($sqlhost, $sqluser, $sqlpass);
print("$conn - $conn2");
Ausgabe: Resource ID #1 - Resource ID #1

So, was macht man dagegen. Bisher habe ich das nur mit persistenten Verbindungen gelöst. Dann geht es ohne Probleme. Aber ob persistente Verbindungen das einzige ist, ist jetzt noch die Frage.

Code: Alles auswählen

$conn = mysql_pconnect($sqlhost, $sqluser, $sqlpass);
$conn2 = mysql_pconnect($sqlhost, $sqluser, $sqlpass);
print("$conn - $conn2");
Ausgabe: Resource ID #1 - Resource ID #2

Hat noch wer Ideen?

Verfasst: 14.04.2005 17:28
von Dennis63
Ich bin der Meinung, daß das ganze bei mir geklappt hat. Allerdingt verbinde ich mich zu zwei verschiedenen Server und nicht zwei mal zum gleichen. Evtl geht das bei Dir nicht!

Grüße
Dennis

Verfasst: 14.04.2005 17:36
von itst
PHP-Handbuch lesen und glücklich werden: http://de2.php.net/mysql_connect

Ich zitiere:
... Für den Fall, dass ein zweiter Aufruf von mysql_connect() mit den gleichen Argumenten erfolgt, wird keine neue Verbindung aufgebaut, sondern die Verbindungs-Kennung der schon bestehenden Verbindung zurückgeliefert. Der Parameter neue_Verbindung beeinflusst dieses Verhalten und mysql_connect() öffnet immer eine neue Verbindung, sogar dann, wenn mysql_connect() zu einem früheren Zeitpunkt mit den gleichen Parametern aufgerufen wurde...

Verfasst: 14.04.2005 17:42
von tbf
ok, das ist jetzt nur dumm. Weil in meiner lokalen Testversion liegt das alles auf dem gleichen Server, nur halt in unterschiedlichen Datenbanken. Bei der entgültigen Version soll es sich schon um verschiedene Rechner handeln. Umweg wäre jetzt für mich local immer nen change_Database zu machen, aber das ist auch kacke. Gibts da keine andere Lösung?

Verfasst: 14.04.2005 17:47
von itst
Kann es sein, das Du den zweiten Satz des Zitats nicht gelesen hast?

Verfasst: 14.04.2005 23:07
von Blutgerinsel
ehm

resource mysql_connect ( [string Server [, string Benutzername [, string Benutzerkennwort [, bool neue_Verbindung [, int client_flags]]]]] )

Nachdem eigentlichen Kenntwort gibts einen Boolean, sprich true oder false.....Und wenn du diesen auf true setzt dann?

Verfasst: 15.04.2005 09:22
von tbf
hi, vielen dank. Hatte leider deine Antwort in der Eile nicht ganz zu ende gelesen. mit dem bool funktioniert es wunderbar!

Danke noch mals!