MudGuard: Eine SQL-Abfrage per GET.

Beitrag lesen

Hi,

Der SQL Injection Angriff ist doch nur bei dem Username und oder Passwort interessant, oder?

Du willst doch testen, ob Dein Ding überhaupt in der Datenbank drinsteht.

'SELECT * FROM gallery WHERE title = "'.$_GET['date'].'"'

Stell Dir vor, ich rufe das Script so auf, daß date den Wert
" OR "" = "
hat, auf.

Dann käme bei der Datenbank an:
SELECT * FROM gallery WHERE title = "" OR "" = ""

Die WHERE-clause ist dann immer true, da der zweite Operand des OR immer true ist - es werden alle Datensätze ausgelesen.

SELECT * solltest Du auch nicht verwenden - gib die Spalten an, die Du haben willst.

if(mysql_num_rows($result) > 0)

[...]

else
    {
        while($row = mysql_fetch_object($result))

Du willst als dann die Zeilen des Ergebnisses auslesen, wenn es keine Zeilen gibt?
Denn die Schleife wird ja - dank mysql_num_rows($result) > 0 und else - nur erreicht, wenn keine Ergebnisse vorhanden sind.

cu,
Andreas

--
Warum nennt sich Andreas hier MudGuard?
Schreinerei Waechter
O o ostern ...
Fachfragen unaufgefordert per E-Mail halte ich für unverschämt und werde entsprechende E-Mails nicht beantworten. Für Fachfragen ist das Forum da.