国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

Langkah-langkah untuk memuat naik fail php

Langkah-langkah memuat naik fail

Untuk mempelajari PHP dengan lebih baik, kami telah meringkaskan muat naik fail PHP yang sangat kompleks kepada 6 langkah.

Dalam penggunaan sebenar, anda boleh melengkapkan muat naik fail PHP dengan jayanya dengan mengikuti 6 langkah berikut:

1 Tentukan sama ada terdapat kod ralat


Penjelasan terperinci tentang kod ralat yang dikembalikan oleh sistem:

錯(cuò)誤碼說明
0無誤,可以繼續(xù)進(jìn)行文件上傳的后續(xù)操作。
1超出上傳文件的最大限制,upload_max_filesize = 2M php.ini中設(shè)置,一般默認(rèn)為2M??筛鶕?jù)項(xiàng)目中的實(shí)際需要來修改
2超出了指定的文件大小,根據(jù)項(xiàng)目的業(yè)務(wù)需求指定上傳文件的大小限制
3只有部分文件被上傳
4文件沒有被上傳
6找不到臨時(shí)文件夾,可能目錄不存在或沒權(quán)限
7文件寫入失敗,可能磁盤滿了或沒有權(quán)限


Nota: Tiada 5 dalam kod ralat.

2. Pertimbangan tersuai sama ada saiz fail melebihi julat

Apabila membangunkan fungsi muat naik. Sebagai pembangun, kami, sebagai tambahan kepada nilai muat naik maksimum yang dinyatakan dalam php.ini.

Kami biasanya juga menetapkan nilai, iaitu had saiz muat naik yang ditentukan oleh perniagaan.

Contohnya:
Sina Weibo atau Zon QQ hanya membenarkan satu gambar avatar 2M. Apabila memuat naik album, anda boleh memuat naik lebih daripada 2J.

Jadi, sistemnya menyokong muat naik fail yang lebih besar.

Saiz fail penghakiman di sini digunakan untuk mengehadkan saiz fail yang dimuat naik yang ingin kami tentukan dalam perniagaan sebenar.

3. Tentukan sama ada nama akhiran dan jenis mim sepadan

Terdapat juga orang jahat dalam dunia dalam talian. Mereka akan memasukkan virus ke dalam gambar, memuat naik virus dalam lampiran, dan mereka akan memasukkan virus atau gambar lucah ke dalam halaman web.

Kita perlu menilai jenis akhiran dan mime bagi fail yang dimuat naik.

MIME (Sambungan Mel Internet Serbaguna) ialah jenis sambungan mel Internet pelbagai guna. Ia adalah sejenis kaedah yang menetapkan fail dengan sambungan tertentu untuk dibuka oleh aplikasi Apabila fail dengan sambungan itu diakses, penyemak imbas secara automatik akan menggunakan aplikasi yang ditentukan untuk membukanya. Ia kebanyakannya digunakan untuk menentukan beberapa nama fail yang ditentukan pelanggan dan beberapa kaedah pembukaan fail media.

Apabila menentukan akhiran dan jenis MIME, kami akan menggunakan fungsi PHP in_array(), yang lulus dalam dua parameter.
Parameter pertama ialah nilai yang akan dinilai
Parameter kedua ialah tatasusunan julat.

Kami menggunakan fungsi ini untuk menentukan sama ada sambungan fail dan jenis mime berada dalam julat yang dibenarkan.

4. Jana nama fail

Fail kami telah berjaya dimuat naik, tetapi ia tidak akan menyimpan nama asal.
Kerana sesetengah orang yang mempunyai kata kunci sensitif dalam nama asal mereka akan melanggar undang-undang dan peraturan yang berkaitan di negara kita.

Kami boleh menggunakan date(), mt_rand() atau unique() untuk menjana nama fail rawak.

5. Tentukan sama ada ia adalah fail yang dimuat naik

Apabila fail berjaya dimuat naik, sistem akan memuat naik fail sementara yang dimuat naik ke direktori sementara sistem. Buat fail sementara.

Nama fail sementara juga akan dijana. Apa yang perlu kita lakukan ialah mengalihkan fail sementara ke direktori yang ditentukan pada sistem.

Adalah tidak saintifik untuk tidak bergerak secara membuta tuli sebelum bergerak, atau bergerak secara salah. Sebelum bergerak, kita perlu menggunakan fungsi yang berkaitan untuk menentukan sama ada fail yang dimuat naik adalah fail sementara.

is_uploaded_file() lulus dalam parameter (nama fail cache dalam $_FILES) untuk menentukan sama ada nama yang diluluskan adalah fail yang dimuat naik.

6. Alihkan fail sementara ke lokasi yang ditentukan

Fail sementara ialah fail sementara yang sebenar, kami perlu mengalihkannya ke direktori tapak web kami.

Jadikan data dalam direktori tapak web kami boleh diakses oleh orang lain.

Kami menggunakan: move_uploaded_file().
Fungsi ini mengalihkan fail yang dimuat naik ke lokasi yang ditentukan dan menamakannya.
Lepaskan dua parameter:
Parameter pertama ialah fail yang dimuat naik untuk dialihkan;
Parameter kedua ialah rentetan yang menggabungkan folder dan nama yang ditentukan.


Meneruskan pembelajaran
||
<form action="" enctype="multipart/form-data" method="post" name="uploadfile">上傳文件:<input type="file" name="upfile" /><br> <input type="submit" value="上傳" /></form> <?php //print_r($_FILES["upfile"]); if(is_uploaded_file($_FILES['upfile']['tmp_name'])){ $upfile=$_FILES["upfile"]; //獲取數(shù)組里面的值 $name=$upfile["name"];//上傳文件的文件名 $type=$upfile["type"];//上傳文件的類型 $size=$upfile["size"];//上傳文件的大小 $tmp_name=$upfile["tmp_name"];//上傳文件的臨時(shí)存放路徑 //判斷是否為圖片 switch ($type){ case 'image/pjpeg':$okType=true; break; case 'image/jpeg':$okType=true; break; case 'image/gif':$okType=true; break; case 'image/png':$okType=true; break; } if($okType){ /** * 0:文件上傳成功<br/> * 1:超過了文件大小,在php.ini文件中設(shè)置<br/> * 2:超過了文件的大小MAX_FILE_SIZE選項(xiàng)指定的值<br/> * 3:文件只有部分被上傳<br/> * 4:沒有文件被上傳<br/> * 5:上傳文件大小為0 */ $error=$upfile["error"];//上傳后系統(tǒng)返回的值 echo "================<br/>"; echo "上傳文件名稱是:".$name."<br/>"; echo "上傳文件類型是:".$type."<br/>"; echo "上傳文件大小是:".$size."<br/>"; echo "上傳后系統(tǒng)返回的值是:".$error."<br/>"; echo "上傳文件的臨時(shí)存放路徑是:".$tmp_name."<br/>"; echo "開始移動(dòng)上傳文件<br/>"; //把上傳的臨時(shí)文件移動(dòng)到up目錄下面 move_uploaded_file($tmp_name,'up/'.$name); $destination="up/".$name; echo "================<br/>"; echo "上傳信息:<br/>"; if($error==0){ echo "文件上傳成功啦!"; echo "<br>圖片預(yù)覽:<br>"; echo "<img src=".$destination.">"; //echo " alt=\"圖片預(yù)覽:\r文件名:".$destination."\r上傳時(shí)間:\">"; }elseif ($error==1){ echo "超過了文件大小,在php.ini文件中設(shè)置"; }elseif ($error==2){ echo "超過了文件的大小MAX_FILE_SIZE選項(xiàng)指定的值"; }elseif ($error==3){ echo "文件只有部分被上傳"; }elseif ($error==4){ echo "沒有文件被上傳"; }else{ echo "上傳文件大小為0"; } }else{ echo "請(qǐng)上傳jpg,gif,png等格式的圖片!"; } } ?>