sapzero
Goto Top

Nach Datensätze suchen

Hi,
ich habe ein Problem undzwar möchte ich in meiner angelegten Datenbank nach einen bestimmten Datensatz suchen. Die Tabelle hat die spalten Username, Vorname und Nachname. Ich will die Datenbank nach dem Usernamen durchsuchen und falls der Username schon vergeben ist soll er eine Nachricht zurückgeben. Dies habe ich so gemacht.

$vergleich = "SELECT Username FROM tblRegistry
WHERE Username = '$username'";
$gefunden = mysql_query($vergleich);
if($gefunden)
{
echo "Username vorhanden<br>";
}
else{
echo "Username wird nicht benutzt<br>";
}

Es wird immer nur Username vorhanden ausgegeben. Wieso funktioniert es nicht?
Ich hoffe jemand kann mir weiterhelfen und ich bedanke mich schon im voraus.

PS:Ich hab das alles mit PHP und MySQl gemacht.

Mit freundlichen Grüßen
Sapzero

Content-ID: 104985

Url: https://administrator.de/contentid/104985

Ausgedruckt am: 23.11.2024 um 00:11 Uhr

Arano
Arano 31.12.2008 um 15:03:20 Uhr
Goto Top
Hallo Sapzero

das ist ganz einfach zu erklären ^^

Was bekommst du den von mysql_query() als Rückgabewert ?
Einen Zeiger auf die Ergebnistabelle der Datenbank, eine Ressourcenkennung.
Dies geschieht weil es keine Rolle spielt ob du nun 4, 1.5Mil. oder 0 Zeilen als Ergebnis bekommst (oder haben willst).
Du bekommst lediglich ein FALSE wenn der Query nicht ausgeführt werden konnte weil er Beispielsweise einen Fehler enthält oder der Datenbankserver nicht reagiert.

// Query zum suchen vorhandener eintraege
$query="SELECT `Username`  
          FROM `tblRegistry`
         WHERE `Username` LIKE '".$username."'";  
$result=@mysql_query($query);
if(!is_resource($result))
 query_error(mysql_error(),mysql_errno()); // ist meine eigene funktion
// gefundene eintraege zaehlen
$treffer=mysql_num_rows($result);
if($treffer>0)
 echo 'Es wurden '.$treffer.' Treffer erzielt !<br>';  
else
 echo '"'.$username.'" erzielte keine Treffer !<br>';  

Hm... ob das LIKE in der WHERE-Klausel besser als "=" ist kann ich jetzt nicht mit Sicherheit sagen. Meine Vermutung ist, das so aber auch Groß- und Kleinschreibung berücksichtigt wird.

~Arano
PS: Wünscht einen guten Rutsch

Edit:
Ach vergiss es, habe es gerade getestet !
Nimm in der WHERE-Klausel wieder das "=" zum vergleich.
Mit LIKE ginge es zwar auch, aber ist nicht unbedingt nötig sofern keine speziellere suche benötigt wird.
Sapzero
Sapzero 31.12.2008 um 16:53:28 Uhr
Goto Top
Hallo Arano,
vielen Dank für dein Antwort. Es hat alles geklappt.
Ich wünsche dir einen Frohes Neues Jahr.

Gruß
Sapzero
Arano
Arano 01.01.2009 um 08:13:14 Uhr
Goto Top
Gern geschehen und vielen Danke!
Das Jahr hat schon mal super begonnen :D
Dir auch ein frohes Neues Jahr, möge alles was du dir vornimmst in Erfüllung gehen.

~Tobias