Seite 3 von 3
Verfasst: 07.06.2007 23:45
von larsneo
So hat man wieder etwas gelernt.
die phase solltest du ausnutzen und den code dann auch noch sicher machen - wie jan bereits beschrieben hat ist die unvalidierte übernahme von variablen eine einladung zur
sql-injektion 
Verfasst: 09.06.2007 10:59
von raphael
So in etwa:
Code: Alles auswählen
$sql = "UPDATE " . WM_TEAMS_TABLE . " SET team_name = '" . str_replace("\'", "''", $t_name[$i]) . "', team_img = '" . str_replace("\'", "''", $t_image[$i]) . "', team_link = '" . str_replace("\'", "''", $t_link[$i]) . "' WHERE team_id = '$t_id[$i]' ";
?
Verfasst: 09.06.2007 11:30
von Miriam
Verfasst: 09.06.2007 12:15
von raphael
Die IDs kann man nicht von Hand ändern. Also es gibt kein Eingabefeld dazu. Das läuft über input type="hidden".
Verfasst: 09.06.2007 12:59
von Miriam
Wenn das Dein Argument ist......
...POST Variablen können auch zwischen Domänen übertragen werden.
Baue wenigstens ein intval() mit ein.
Verfasst: 09.06.2007 13:57
von larsneo
in der kombintation mysql und php bietet sich sicherlich eher
mysql_real_escape_string an - ob die phpbb-api etwas vergleichbares bietet weiss ich jetzt aus dem stehtgreif allerdings nicht...
Verfasst: 09.06.2007 14:46
von raphael
"POST Variablen können auch zwischen Domänen übertragen werden."
Habe ich nicht bedacht bzw. nicht gewusst.
Hab mir den Link von larsneo angesehen und interessiert durchgelesen.
Kann das dementsprechend umformen. Mir stellt sich nur die Frage, ob das im Adminbereich (wo die von mir gebastelte Datei landen wird) wirklich notwendig ist - habe in anderen Admin-Dateien nämlich noch nie diese Vorgehensweise gesehen sondern immer nur die auf str_replace basierende.
Verfasst: 09.06.2007 17:49
von Miriam
Hier wurde das schon mal diskutiert..... Musst mal etwas suchen.
Aber ich denke, dass intval() das erwünschte bringt. Auch sicher genug.
Probier mal das aus (als PHP Datei speichern und aufrufen):
Code: Alles auswählen
<?php
echo intval('5');
echo "<br />".intval('fuenf_5');
?>