[PHP] In mehreren Datenbanken inserten

12/05/2013 17:56 °"Crazy"°#1
Hallo,

nach langem Suchen finde ich einfach nichts passendes im Internet. Ich hoffe, Ihr könnt mir helfen.

Ich möchte mit einer Query (Oder wie man das nennt :D) in 2 Datenbanken 2 verschiedene Befehle ausführen. JEdoch bin ich soweit:

Code:
mysql_select_db($db['char']);
echo $text[25];
mysql_query($ren_sql);
Dieses Funktioniert einwandfrei. Wenn ich nun die 2. Datenbank mit dazunehme, dann funktioniert es nicht. Ich mache es wie folgt:

Code:
mysql_select_db($db['logging']);
echo $text[25];
mysql_query($ren_sql2);		
mysql_select_db($db['char']);
echo $text[25];
mysql_query($ren_sql);
Ich hoffe, jemand kann mir da ein bisschen unter die Arme greifen.

MfG
12/05/2013 18:08 Mikesch01#2
Was hat es mit
Code:
echo $text[25];
auf sich? :D Das steht die ganze Zeit da..aber ich bezweifle, dass es benötigt wird. Dein Code ist ganz seltsam^^

Lösung für dein Problem:

PHP Code:
$connect mysql_connect("host""user""pw");
$qry1 mysql_query("SELECT * FROM datenbank1.tabelleBla");
$qry2 mysql_query("SELECT * FROM datenbank2.tabelleBlubb"); 
12/05/2013 18:25 °"Crazy"°#3
Code:
echo $text[25];
Ist nur eine Ausgabe eines Textes, welches erscheinen soll. ;)

Selecten ist kein Problem, ich möchte ja inserten. Folgendes geht:

Code:
	
mysql_select_db($db['char']);
echo $text[25];
mysql_query($ren_sql2);
mysql_query($ren_sql);
Jedoch ist es dann widerum nur in eine Datenbank. Da ich gerne alles mitlogge, u.A. auch in anderen DB's zu Testzwecken reinschreibe, wäre da eine andere Lösung fällig.

@Mikesch01
Die Variante geht nicht. Frag mich jetzt nicht wieso, es ist so. ;)

Folgendes geht widerum, ist aber nur SELECT:
Code:
mysql_connect($db['ip'], $db['user'], $db['pass']);
mysql_select_db($db['realmd']);
$last_login_sql = "SELECT * FROM account WHERE id=".$_SESSION['id'];
$last_login_q   = mysql_query($last_login_sql);
$last_login_f   = mysql_fetch_array($last_login_q);
mysql_select_db($db['char']);
$chars_sql = "SELECT * FROM characters WHERE account=".$_SESSION['id'];
$chars_q   = mysql_query($chars_sql);
$chars_num = mysql_num_rows($chars_q);
Config sieht so aus:
Code:
	$db = array(
		"ip"      => "localhost",
		"user"    => "Benutzername",
		"pass"    => "",
		"realmd"  => "auth",
		"logging"     => "logging",
		"char"    => "char"
	
				);
12/05/2013 18:51 Mikesch01#4
Hast du Skype oder ähnliches zum Kommunizieren? Sieht nach einem etwas komplexerem Problem aus^^
12/05/2013 18:59 °"Crazy"°#5
Natürlich. Meine Addy lautet mungatobi

MfG
12/05/2013 19:44 Synatex#6
Abhängig davon welche Engine du benutzt kann es sein das Schreibzugriffe die Datenbank sperren. Nachdem du in die erste Datenbank geschrieben hast am besten mit

[Only registered and activated users can see links. Click Here To Register...]

einmal die Verbindung schließen. Dann eine neue aufbauen. So oder so musst du 2 Verbindungen aufbauen.

Desweiteren werden die mysql_* Funktionen mit PHP 5.5 veraltet sein wodurch dir abzuraten ist damit noch weiter zu arbeiten.
12/05/2013 20:13 Mikesch01#7
Die Lösung ging mit meiner Methode auch. Also über Datenbank.Tabelle zugreifen.

Die Fehler lagen wo anders und sind nun eliminiert ^^