P
PHP
Well-known member
- Beiträge
- 997
- Punkte Reaktionen
- 0
Prüft, ob die Datei mittels HTTP POST upgeloaded wurde
Gibt TRUE zurück, wenn die Datei filenamemittels HTTP POST upgeloaded wurde. Das ist hilfreich sicherzustellen,dass kein böswilliger User versucht hat das Script zu überlisten, indemer es Dateien bearbeiten lässt, die es gar nicht bearbeiten sollte.Zum Beispiel /etc/passwd.
Rückgabewert:
Siehe auch move_uploaded_file(), und das KapitelSteuerung von Dateiuploadsfür ein einfaches Anwendungsbeispiel.
Beispiel:
Gibt TRUE zurück, wenn die Datei filenamemittels HTTP POST upgeloaded wurde. Das ist hilfreich sicherzustellen,dass kein böswilliger User versucht hat das Script zu überlisten, indemer es Dateien bearbeiten lässt, die es gar nicht bearbeiten sollte.Zum Beispiel /etc/passwd.
Rückgabewert:
Siehe auch move_uploaded_file(), und das KapitelSteuerung von Dateiuploadsfür ein einfaches Anwendungsbeispiel.
Beispiel:
PHP:
/* Userland Test für hochgeladene Datei. */
function is_uploaded_file($filename) {
if (!$tmp_file = get_cfg_var('upload_tmp_dir')) {
$tmp_file = dirname(tempnam('', ''));
}
$tmp_file .= '/' . basename($filename);
/* Der Benutzer könnte einen führenden Slash in php.ini haben... */
return (ereg_replace('/+', '/', $tmp_file) == $filename);
}
/* So verwenden Sie sie, nachdem Sie in diesen älteren
* Versionen auch keine move_uploaded_file() haben: */
if (is_uploaded_file($HTTP_POST_FILES['userfile'])) {
copy($HTTP_POST_FILES['userfile'], "/place/to/put/uploaded/file");
} else {
echo "Mögliche Dateiupload-Attacke: Dateiname '$HTTP_POST_FILES[userfile]'.";
}