Viron: Aus zwei Datenbanken einen Vergleich holen

Hallo !

Ich bin auf der Suche nach einer Lösung für mein Problem ;)

Ich möchte für eine Website eine "Passwort Vergessen" Seite einrichten.
Für ein Brwosergame ;)

So mir kam schon die Idee mit an die Email schicken ich hätte es aber gerne etwas anders.
Ich möchte das man auch einen Character NAmen angeben muss zur Autentifizierung. Allerdings habe ich den Account _Namen in einer anderen MySQL datenbank als die Character. meine Datenbanken sind so aufgebaut:

logonDB
AccountID : Username : Passwort : Email

CharacterDB
GUID : Charactername : Welt : Klasse : Online

(unter GUID ist das selbe wie die AccountID nur anderer Name)

So. Mein Script vergleicht bisher erfolgreich Account Name und Passwort.
Weil das ja in einer Datenbank ist.

Nun möchte ich aber den Account Namen mit einem Characternamen vergleichen.
d.H um das Passwort zu ändern muss man den Namen seines Characters angeben.

Mein Script bisher:

{  
  
	$select1="SELECT * FROM account WHERE username='$name' AND email='$email'";  
	$query1=mysql_query($select1);  
  
	if(!$query1)  
	{echo "Dein Accountname und die Email passen nicht zusammen!"; die;}  
  
	while($pass=mysql_fetch_array($query1))  
	{  
  
		if($name!=$pass['username'] && $email!=$pass['email']){  
		echo "Dein Accountname und die E-Mail passen nicht zusammen!"; die;}  
		else  
		{  
		  
		$eingabe="  
			  UPDATE account  
              		  SET sha_pass_hash=SHA1(CONCAT(UPPER('".			  $name."'),':',UPPER('".$pass_new."'))),  
              		  `v`=''  
              		  WHERE username='$name' AND email='$email'  
			 ";  
		  
		$queryy=mysql_query($eingabe);  
  
			if(!$queryy)  
			echo "Änderung war nicht erfolgreich! Ein Fehler ist Aufgetreten!";  
			else  
			echo "Änderung erfolgreich!<br>Dein neues Passwort ist: <u>".$pass_new."</u>";  
		}  
  
	}  
  
  
)

Das obrige wie es mit email und username ist, hätte ich gerne mit username und charactername ;)

Kann mir da jemand helfen?

  1. Moin!

    logonDB
    AccountID : Username : Passwort : Email

    CharacterDB
    GUID : Charactername : Welt : Klasse : Online

    (unter GUID ist das selbe wie die AccountID nur anderer Name)

    So. Mein Script vergleicht bisher erfolgreich Account Name und Passwort.
    Weil das ja in einer Datenbank ist.

    Wirklich eine andere Datenbank auf einem ganz anderen Server? Oder auf dem gleichen Server? Weil dann kannst du, sofern deine DB-Zugangsdaten dir Zugriff auf beide Datenbanken gewähren, einen DB-übergreifenden Query schreiben.

    - Sven Rautenberg

  2. Hi,

    Ich möchte das man auch einen Character NAmen angeben muss zur Autentifizierung. Allerdings habe ich den Account _Namen in einer anderen MySQL datenbank als die Character. meine Datenbanken sind so aufgebaut:
    logonDB
    AccountID : Username : Passwort : Email
    CharacterDB
    GUID : Charactername : Welt : Klasse : Online

    Sind das wirklich getrennte Datenbanken? Oder sind es doch nur getrennte Tabellen?

    (unter GUID ist das selbe wie die AccountID nur anderer Name)

    Wenn's nur getrennte Tabellen wären: Stichwort join.
    Einführung in Joins
    Fortgeschrittene Join-Techniken

    cu,
    Andreas

    --
    Warum nennt sich Andreas hier MudGuard?
    O o ostern ...
    Fachfragen per Mail sind frech, werden ignoriert. Das Forum existiert.