Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   [PHP] SQL Ergebnis mit Variable Vergleichen (https://www.delphipraxis.net/66152-%5Bphp%5D-sql-ergebnis-mit-variable-vergleichen.html)

Hannes4 25. Mär 2006 19:40


[PHP] SQL Ergebnis mit Variable Vergleichen
 
Hallo,

und zwar hab ich ein problem, ich muss bis morgen ein script schreiben, in dem auf einen datensatz zugegriffen wird und mit dem aktuellen benutzernamen überprüft wird.

nennen wir die tabelle mit den daten mal Test1 und die variable mit dem aktuellen benutzernamen $name

Die daten aus der Tabelle zu laden fällt mir nicht schwer, jedoch weiss ich nicht wie ich das mit einander vergleichen kann, ob der aktuelle benutzername in dieser tabelle verfügbar ist, wenn er nicht da ist soll exit() kommen.



Code:
 $DatabasePointer=mysql_connect("localhost", "aaa", "passwd");
    mysql_select_db("usr_aaa_2", $DatabasePointer);
    $res = mysql_query("SELECT * FROM Test1");
    $name_datenbank = $row['name'];
    $name = ['username'];

    if


ab hier weiss ich nicht mehr weiter, wie kann ich jetzt die variablen vergleichen?

Kann mir bitte jemand helfen? ich rätsel schon den ganzen tag an dem problem und im web hab ich auch keine hilfe gefunden

Bitte bitte helft mir

Gruß

Sebastian

mkinzler 25. Mär 2006 19:45

Re: [PHP] SQL Ergebnis mit Variable Vergleichen
 
Einfache Suchbedingung in SQL-Abfrage einbauen:
SQL-Code:
SELECT * FROM Test1 where benutzername = $name;

Hannes4 25. Mär 2006 19:49

Re: [PHP] SQL Ergebnis mit Variable Vergleichen
 
Aber da is noch ne sache drinnen die vielleicht wichtig ist, die tabelle in der datenbank kann gefüllt sein, muss aber nicht. wenn sie nicht gefüllt ist das heißt wenn der eintrag nicht vorhanden ist, dann soll er nicht mit exit() aufhören.

doch wie überprüf ich das? die tabelle kann 10 datensätze enthalten aber auch gar keine.

nur hab ich im manual gelesen das es dabei zu syntax errors kommen kann wenn das ergebnis 0 ist

Wie soll ich dsa lösen?

fred.reichbier 25. Mär 2006 19:52

Re: [PHP] SQL Ergebnis mit Variable Vergleichen
 
Wie viele Ergebnisse eine Abfrage erhalten hat, kannst du mit mysql_num_rows($result); überprüfen.

mfg fred

mkinzler 25. Mär 2006 19:55

Re: [PHP] SQL Ergebnis mit Variable Vergleichen
 
Zitat:

nur hab ich im manual gelesen das es dabei zu syntax errors kommen kann wenn das ergebnis 0 ist
Nein, es führt zu keinem Fehler und schon agr nicht zu einem Systaxfehler. es wird halt ne leere Datenmeneg zurückgeliefert.
Und dies kannst du mit
Code:
mysql_num_rows()
testen. Wenn diese Funktion 0 zurückliefert kannst du darauf mit
Code:
exit()
reagieren

generic 27. Mär 2006 02:00

Re: [PHP] SQL Ergebnis mit Variable Vergleichen
 
Zitat:

Zitat von mkinzler
Einfache Suchbedingung in SQL-Abfrage einbauen:
SQL-Code:
SELECT * FROM Test1 where benutzername = $name;

wenn ihr sowas verwendet achtet bitte drauf das keine injections moeglich sind.

faux 27. Mär 2006 07:10

Re: [PHP] SQL Ergebnis mit Variable Vergleichen
 
Hallo!

Wenn du es so machst:
Code:
$query = "SELECT benutzername FROM Test1 WHERE benutzername = '$name' LIMIT 1";
$result = mysql_query($query);
if ($result)
{
  $data = mysql_fetch_array($result, MYSQL_ASSOC);
}
else //Kein entsprechender Datensatz vorhanden
{

}
Dann sollte es keine Probleme geben, und du sparst dir das mysql_num_rows().

Noch was zum Query:
Ich schätze mal, dass benutzername ein VARCHAR ist, also musst du $name in Anführungszeichen setzen. Desweiteren sollte man kein SELECT * FROM schreiben und ein LIMIT 1 ist auch nicht fehl am Platz. ;)

Grüße
Faux


Alle Zeitangaben in WEZ +1. Es ist jetzt 02:44 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz