Seite 1 von 1
Allgemeine Variable für $_GET
Verfasst: 27.09.2005 22:13
von fanrpg
Also ich suche eine Variable zu allen $_GET Befehlen die vorkommen können also ich habs so versucht:
Aber irgendwie schreibt er mir immer das Keine Bla Befehle ausgeführt werden dürfen selbst wenn ich Get nicht anwende
Und ich will alle Post Befehle bis auf einen auch so ausschliessen?
Ich habs so versucht:
Code: Alles auswählen
if(!($_POST['submit']))
{
die("Keine Postbefehle dürfen ausgeführt werden");
}
Aber das schreibt er mir dann auch immer -.-
Also was mache ich falsch?
Verfasst: 27.09.2005 22:34
von md5()
Du willst also alles was per
kommt verbieten auser die die du erlaubst ?
dann mach es doch so:
Code: Alles auswählen
if ( $_GET["schlüssel"] == 'ja' )
{
echo"erlaubt";
}
else if ( $_GET["schlüssel"] == 'nein' )
{
echo"nicht erlaubt";
}
Aber ich glaube eine variable die das
verbietet gibt es glaube nicht.
Kann mich auch irren.
Verfasst: 27.09.2005 22:42
von fanrpg
nein ich will nicht jeden einzelnen Begriff verbieten erlauben und verbieten
sondern allgemein alles verbieten:
also wenn jeman
index.php?get=bla aufruft soll es verboten werden
wie auch
index.php?kjjklalöjööalsmöl=dlkalsk
Das einfach alles was angehängt mit einem die() endet egal was wann und warum! das nur die index.php aufrufbar ist und sonst nichts ohne jeden Anhängsel genauso wie bei $_POST das nur $_POST['submit'] erlaubt und sonst nichts denn auch $_POST kann man fälschen man braucht einfach die Variablennamen zu kennen und dann sich eine html Datei stricken die als action="meineindex.php" hat und per methode post hat, und wenn regsiter_globals on sind ist es sogar noch gefährlicher aber da ich nur $_POST['submit'] verwende sonst nichts (nur um das Skript zum ausführen zu bringen) der rest soll auch verboten werden da man durch die selber gestrickte html datei wieder post befehle senden kann (und natürlich über irgendwelche Browser Plug-Ins, dann braucht man nicht mal ne selbst gestrickte HTML Datei) und gerade bei register_globals ist das sehr gefährlich da da MySQL Injectionen eingeführt werden können (ohne Eingabe eines User z.B nur wenn man zählen will wie oft ein Datensatz vorhanden ist.
Ich hoffe ihr versteht was ich meine

Verfasst: 28.09.2005 23:06
von fanrpg
darf ich? darf ich?
Ich darf
Es sind mehr als 24h rum...
*push*
Verfasst: 29.09.2005 02:44
von RobertC
Du kannst überprüfen, ob $_SERVER['QUERY_STRING'] leer ist.
Da steht alles drinnen, was in der URL nach dem ? kommt.
Wenn etwas drinnen steht, brichst du einfach mit die() ab.
Bei $_POST kann Ich Dir leider nicht weiterhelfen.