Php script file feltöltés

Ebben a cikkben megnézzük egy példát: létrehozunk egy php script fájlok feltöltése a szerverre. Az egyszerű példát a fájlok letöltését lesz 2 kép: a forma (form.html), php script feltöltési fájlok (uploader.php).

Mi most úgy minden részletet. Először is, elemzi a fájl formájában form.html:

Mint látható, ez egy egyszerű html kód, nincs semmi bonyolult itt, csak akkor, ha a forma lehet feltölteni a fájlokat a szerverre, meg kell határozni a enctype = „multipart / form-data”.

A forma fog kinézni:

PrimerPHP script fájl letöltések

Most foglalkozik php fájlt, amely feltölteni a fájlokat a szerverre. Az alábbiakban a forráskód:

Hogyan PHP fájlt feltölteni script?

uploader.php egy egyszerű php fájlt feltölteni script a szerveren, hogy letölti a fájlokat egy adott könyvtárban az oldalon, amely jelzi string $ target_path = „uploaded_files /”;

Ezután mozgassa a letöltött fájlt move_uploaded_file () függvény az első argumentum a mi letölthető fájl, a második pedig az a mappa elérési útját a helyszínen, amely betölti a fájlt.

Nos, persze ezt az elemi levezetés üzeneteket if / else, hogy egyértelmű volt, mi fájl betöltése vagy sem.

Elleni védelem hacker betörés egy letöltött fájl

Nézzük meg nemcsak védelmet hacker betörések, hanem más nem kívánt problémákat, ha a fájlok feltöltése a szerverre.

PHP fájl átalakító

Ez az első probléma a feltöltés. A letöltés php shell, és ez nem jelenti azt, hogy a terjeszkedés lesz php. Meg lehet venni a forma image.jpg (.gif. Png ...). De belül hasonlóan néz ki:

Egyes mesterek is parancsokat futtat a szerver szörfözés az url:

A védelem, lehetséges, hogy megvalósítsa a MIME fájlok ellenőrzése. Lásd az alábbi példát:

Ez a darab php kód ellenőrzi, hogy a letöltés GIF fájlt. Illessze be a kódot, mielőtt a php script fájlok feltöltésére. Természetesen meg lehet változtatni a teszt jpg, pngili egyéb szükséges fájlokat.

Az igazat megvallva, és ez a módszer a védelem lehet megkerülni, ha küld egy fejléc fejléc, a MIME előírásoknak. Ehhez el kell végezni a jelenléte