AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein [PHP] SQL Ergebnis mit Variable Vergleichen
Thema durchsuchen
Ansicht
Themen-Optionen

[PHP] SQL Ergebnis mit Variable Vergleichen

Ein Thema von Hannes4 · begonnen am 25. Mär 2006 · letzter Beitrag vom 27. Mär 2006
Antwort Antwort
Hannes4

Registriert seit: 25. Mär 2006
2 Beiträge
 
#1

[PHP] SQL Ergebnis mit Variable Vergleichen

  Alt 25. Mär 2006, 19:40
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
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.858 Beiträge
 
Delphi 11 Alexandria
 
#2

Re: [PHP] SQL Ergebnis mit Variable Vergleichen

  Alt 25. Mär 2006, 19:45
Einfache Suchbedingung in SQL-Abfrage einbauen: SELECT * FROM Test1 where benutzername = $name;
Markus Kinzler
  Mit Zitat antworten Zitat
Hannes4

Registriert seit: 25. Mär 2006
2 Beiträge
 
#3

Re: [PHP] SQL Ergebnis mit Variable Vergleichen

  Alt 25. Mär 2006, 19:49
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?
  Mit Zitat antworten Zitat
Benutzerbild von fred.reichbier
fred.reichbier

Registriert seit: 27. Apr 2004
154 Beiträge
 
#4

Re: [PHP] SQL Ergebnis mit Variable Vergleichen

  Alt 25. Mär 2006, 19:52
Wie viele Ergebnisse eine Abfrage erhalten hat, kannst du mit mysql_num_rows($result); überprüfen.

mfg fred
Friedrich Weber
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.858 Beiträge
 
Delphi 11 Alexandria
 
#5

Re: [PHP] SQL Ergebnis mit Variable Vergleichen

  Alt 25. Mär 2006, 19:55
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
Markus Kinzler
  Mit Zitat antworten Zitat
generic

Registriert seit: 24. Mär 2004
Ort: bei Hannover
2.416 Beiträge
 
Delphi XE5 Professional
 
#6

Re: [PHP] SQL Ergebnis mit Variable Vergleichen

  Alt 27. Mär 2006, 02:00
Zitat von mkinzler:
Einfache Suchbedingung in SQL-Abfrage einbauen: SELECT * FROM Test1 where benutzername = $name;
wenn ihr sowas verwendet achtet bitte drauf das keine injections moeglich sind.
Coding BOTT - Video Tutorials rund um das Programmieren - https://www.youtube.com/@codingbott
  Mit Zitat antworten Zitat
Benutzerbild von faux
faux

Registriert seit: 18. Apr 2004
Ort: Linz
2.044 Beiträge
 
Turbo Delphi für Win32
 
#7

Re: [PHP] SQL Ergebnis mit Variable Vergleichen

  Alt 27. Mär 2006, 07:10
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
Faux Manuel
Wer weiß, dass er nichts weiß, weiß mehr, als der der nicht weiß, dass er nichts weiß.
GoTrillian
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:31 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz