PHP Fail Upload: Membina sistem muat naik yang selamat dan boleh dipercayai
Gambar album dalam talian, lampiran e -mel, dan fail data pemprosesan batch mempunyai satu perkara yang sama: mereka semua perlu memuat naik fail ke Internet melalui pelayar web pengguna. Ciri muat naik fail adalah bahagian penting dari banyak laman web dan aplikasi web yang digunakan setiap hari. Artikel ini akan menunjukkan kepada anda bagaimana untuk menambah sokongan fail muat naik ke laman web anda menggunakan PHP.
mata utama
Menambah sokongan muat naik fail dalam PHP memerlukan membuat borang HTML untuk pengguna dan skrip PHP untuk memproses fail yang dimuat naik pada pelayan. Elemen - mesti menggunakan kaedah pos dan menetapkan harta Enctype ke Multipart/Form-Data.
<form></form>
Fail yang dimuat naik pertama kali disimpan dalam direktori sementara. Skrip PHP yang bertanggungjawab untuk mengendalikan penyerahan borang mengesahkan fail dan memprosesnya, biasanya memindahkannya dari lokasi sementara ke lokasi yang lebih kekal. -
Maklumat mengenai muat naik fail disediakan melalui tatasusunan berbilang dimensi - . Fungsi
$_FILES
menggerakkan fail yang dimuat naik dari lokasi sementara ke lokasi tetap dan melakukan pemeriksaan tambahan untuk memastikan fail itu dimuat naik melalui permintaan pos HTTP. move_uploaded_file()
Terdapat risiko keselamatan untuk memuat naik fail. Untuk mengurangkan risiko ini, anda boleh mengesahkan jenis fail yang dimuat naik, mengenakan sekatan yang ketat pada trafik yang dimuat naik, dan mengimbas virus. Ia juga penting untuk memastikan nama fail yang selamat dengan menggantikan mana -mana aksara yang bukan huruf, nombor, atau set tanda baca yang sangat terhad dengan garis bawah. -
prasyarat
Muat naik fail pemprosesan tidak sukar, tetapi terdapat beberapa butiran kecil yang mesti betul, jika tidak, muat naik akan gagal. Pertama, anda perlu memastikan bahawa PHP dikonfigurasi untuk membolehkan muat naik. Semak fail php.ini anda dan sahkan bahawa Arahan File_uploads ditetapkan ke ON.
<code>file_uploads = On</code>
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
Fail yang dimuat naik pertama kali disimpan dalam direktori sementara (jangan risau ... skrip PHP anda kemudian boleh memindahkan fail ke lokasi yang lebih kekal selepas itu). Secara lalai, lokasi awal adalah direktori sementara lalai sistem. Anda boleh menentukan direktori yang berbeza menggunakan arahan upload_tmp_dir dalam php.ini. Walau apa pun, anda harus mengesahkan bahawa proses PHP mempunyai keizinan yang sesuai untuk menulis ke direktori yang anda gunakan.
<code>upload_tmp_dir = "/tmp"
tboronczyk@zarkov:~$ ls -l / | grep tmp
drwxrwxrwt 13 root root 40960 2011-08-31 00:50 tmp</code>
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
Selepas mengesahkan bahawa konfigurasi membolehkan pelayan menerima fail yang dimuat naik, anda boleh memberi tumpuan kepada butiran HTML. Seperti kebanyakan interaksi sisi pelayan dari HTML, memuat naik fail menggunakan borang. Adalah sangat penting bahawa elemen
anda mesti menggunakan kaedah pos dan menetapkan harta Enctype ke Multipart/Form-Data. <form></form>
Atas ialah kandungan terperinci phpmaster | Memuat naik fail dengan php. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!