Maison > Article > développement back-end > Comment résoudre le problème des noms de fichiers tronqués téléchargés par php
La solution au nom de fichier tronqué téléchargé par PHP : ajoutez d'abord le code "header("Content-type: text/html; charset=utf-8");" en tête du fichier PHP ; puis définissez une variable ; exécutez enfin la page PHP.
Recommandé : "Tutoriel PHP"
Le téléchargement de fichiers est l'une des fonctions les plus couramment utilisées lorsque nous traitons un formulaire soumissions Tout d'abord, j'ai écrit une petite démo aujourd'hui, comme suit :
Regardons d'abord la structure :
html est la page de soumission du formulaire, et php sert à traiter le fichier du formulaire, le téléchargement est l'emplacement où le fichier téléchargé est placé
html:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>文件上传</title> </head> <body> <form action="file_updata.php" method="post" enctype="multipart/form-data"> <label for="files">文件上传</label> <input type="file" id="files" name="file"> <br/> <input type="submit" name="submits" value="提交"> </form> </body> </html>
php:
$file = $_FILES["file"]; if ($file["error"] > 0) { echo "错误:" . $file["error"]; } else { echo "文件名称:" . $file["name"] . "</br>"; echo "文件类型:" . $file["type"] . "</br>"; echo "文件大小:" . ($file["size"] / 1024) . "K</br>"; echo "文件临时存储的位置:" . $file["tmp_name"] . "</br>"; //保存上传的文件 if (file_exists("upload" . $file["name"])) { echo $file["name"] . "文件已经存在"; } else { //如果目录不存在则将该文件上传 move_uploaded_file($file['tmp_name'], "upload/" . $file["name"]); echo '文件上传成功!'; } }
J'ai téléchargé un fichier .txt, comme suit :
Exécution :
Vous pouvez voir que c'est très fluide, jetons un œil au résultat :
Le fichier téléchargé en ce moment est ce que nous voulons, mais il est tronqué. Bon, d'accord, résolvons-le :
Tout d'abord. , ajoutez Un tel morceau de code :
header("Content-type: text/html; charset=utf-8");
Ensuite, définissez une variable :
$name = iconv('utf-8','gb2312',"upload/".$file["name"]);
D'accord, regardons toute la page PHP :
header("Content-type: text/html; charset=utf-8"); $file = $_FILES["file"]; if($file["error"]>0){ echo "错误:".$file["error"]; }else{ $name = iconv('utf-8','gb2312',"upload/".$file["name"]); echo "文件名称:".$file["name"].""; echo "文件类型:".$file["type"].""; echo "文件大小:".($file["size"]/1024)."K"; echo "文件临时存储的位置:".$file["tmp_name"].""; //保存上传的文件 if(file_exists("upload".$file["name"])){ echo $file["name"]."文件已经存在"; }else{ //如果目录不存在则将该文件上传 if(move_uploaded_file($file['tmp_name'],$name)){ // move_uploaded_file($file['tmp_name'],"upload/".$file["name"]); echo '文件上传成功!'; echo '图片信息:'; print_r($file); } }
Exécuter :
Parfait.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!