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

étapes pour télécharger des fichiers php

étapes du téléchargement de fichiers

Afin de mieux apprendre PHP, nous avons résumé le téléchargement de fichiers PHP extrêmement complexe en 6 étapes.

En utilisation réelle, vous pouvez terminer avec succès le téléchargement du fichier PHP en suivant ces 6 étapes?:

1 Déterminez s'il y a un code d'erreur

.


Explication détaillée du code d'erreur renvoyé par le système?:

錯(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)限


Remarque?: Il n'y a pas de 5 dans le code d'erreur.

2. Jugement personnalisé si la taille du fichier dépasse la plage

Lors du développement de la fonction de téléchargement. En tant que développeurs, nous, en plus de la valeur de téléchargement maximale spécifiée dans php.ini.

Nous définissons généralement également une valeur, qui correspond à la taille limite de téléchargement spécifiée par l'entreprise.

Par exemple?:
Sina Weibo ou QQ Zone n'autorise qu'une seule photo d'avatar de 2M. Lors du téléchargement d’albums, vous pouvez en télécharger plus de 2 millions.

Ainsi, son système prend en charge le téléchargement de fichiers plus volumineux.

La taille du fichier de jugement ici est utilisée pour limiter la taille du fichier téléchargé que nous souhaitons spécifier dans les affaires réelles.

3. Déterminez si le nom du suffixe et le type MIME correspondent

Il y a aussi de mauvaises personnes dans le monde en ligne. Ils inséreront des virus dans les images, téléchargeront des virus dans des pièces jointes et inséreront des virus ou des images pornographiques dans des pages Web.

Nous devons juger du suffixe et du type MIME du fichier téléchargé.

MIME (MultiPurpose Internet Mail Extensions) est un type d'extension de messagerie Internet polyvalente. Il s'agit d'un type de méthode qui définit un fichier avec une certaine extension à ouvrir par une application. Lors de l'accès au fichier avec l'extension, le navigateur utilisera automatiquement l'application spécifiée pour l'ouvrir. Il est principalement utilisé pour spécifier certains noms de fichiers définis par le client et certaines méthodes d'ouverture de fichiers multimédias.

Lors de la détermination du suffixe et du type MIME, nous utiliserons une fonction PHP in_array(), qui transmet deux paramètres.
Le premier paramètre est la valeur à juger ;
Le deuxième paramètre est le tableau de plages.

Nous utilisons cette fonction pour déterminer si l'extension du fichier et le type MIME se situent dans la plage autorisée.

4. Générer le nom du fichier

Notre fichier a été téléchargé avec succès, mais il n'enregistrera pas le nom d'origine.
Parce que certaines personnes qui ont des mots-clés sensibles dans leur nom d'origine enfreindront les lois et réglementations en vigueur dans notre pays.

Nous pouvons utiliser date(), mt_rand() ou unique() pour générer des noms de fichiers aléatoires.

5. Déterminez s'il s'agit d'un fichier téléchargé

Lorsque le fichier est téléchargé avec succès, le système téléchargera le fichier temporaire téléchargé dans le répertoire temporaire du système. Créez un fichier temporaire.

Un nom de fichier temporaire sera également généré. Ce que nous devons faire est de déplacer les fichiers temporaires vers le répertoire spécifié sur le système.

Il n'est pas scientifique de ne pas bouger aveuglément avant de bouger, ou de mal bouger. Avant de déménager, nous devons utiliser les fonctions pertinentes pour déterminer si le fichier téléchargé est un fichier temporaire.

is_uploaded_file() transmet un paramètre (le nom du fichier cache dans $_FILES) pour déterminer si le nom transmis est un fichier téléchargé.

6. Déplacez les fichiers temporaires vers l'emplacement spécifié

Les fichiers temporaires sont de vrais fichiers temporaires, nous devons les déplacer vers le répertoire de notre site Web.

Rendre les données de notre répertoire de sites Web accessibles aux autres.

Nous utilisons?: move_uploaded_file().
Cette fonction déplace le fichier téléchargé vers l'emplacement spécifié et le nomme.
Passez deux paramètres?:
Le premier paramètre est le fichier téléchargé à déplacer
Le deuxième paramètre est la cha?ne concaténant le dossier et le nom spécifiés?;


Formation continue
||
<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等格式的圖片!"; } } ?>
soumettreRéinitialiser le code