目錄
回复讨论(解决方案)
首頁 後端開發 php教程 上传中文文件名为空

上传中文文件名为空

Jun 23, 2016 pm 02:18 PM

比如 你好.txt 上传到服务器就成了 .txt,文件名部分是空的,不知道为什么。windows系统下文件名不是不允许为空吗?

上传处理代码

<?$upload_path = $_SERVER['DOCUMENT_ROOT']."/upload/";$tmp_file = $_FILES['myfile']['name'];$dest_file = $upload_path.basename($tmp_file);if(move_uploaded_file($_FILES['myfile']['tmp_name'],$dest_file)){ echo "文件已上传至服务器根目录的upload目录下!";	 print_r($dest_file);}else{  echo	"文件上传时发生了一个错误".$_FILES['myfile']['error'];}?>
登入後複製


HTML代码
<html><head><title>upload</title></head><body><form enctype="multipart/form-data" action="upload.php" method="POST">上传此文件:<input name = "myfile" type="file" /><input type="submit" value="提交上传" /></form></body></html>
登入後複製


回复讨论(解决方案)

如果文件名是英文或者数字都是没有问题的。

建议用英文、数字作为文件名,这样移植行更强一些。

如果非要中文名,那就urlencode一下,读取时urldecode过来

gbk字符在utf-8环境中显示为空的正常现象

如果用户上传自己的文件中带有中文怎么办

urlencode和urldecode应该怎么写代码呀,小弟学PHP时间不长,请各位大神指点。

用当前时间戳命名最简单
$dest_file = $upload_path.basename($tmp_file);
改为

$ext=pathinfo($tmp_file,PATHINFO_EXTENSION)$dest_file = $upload_path.time().'.'.$ext;
登入後複製


或者用base64编码,感觉要比urlencode要好。

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱門文章

倉庫:如何復興隊友
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒險:如何獲得巨型種子
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
1 週前 By 尊渡假赌尊渡假赌尊渡假赌

熱門文章

倉庫:如何復興隊友
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒險:如何獲得巨型種子
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
1 週前 By 尊渡假赌尊渡假赌尊渡假赌

熱門文章標籤

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

11個最佳PHP URL縮短腳本(免費和高級) 11個最佳PHP URL縮短腳本(免費和高級) Mar 03, 2025 am 10:49 AM

11個最佳PHP URL縮短腳本(免費和高級)

在Laravel中使用Flash會話數據 在Laravel中使用Flash會話數據 Mar 12, 2025 pm 05:08 PM

在Laravel中使用Flash會話數據

簡化的HTTP響應在Laravel測試中模擬了 簡化的HTTP響應在Laravel測試中模擬了 Mar 12, 2025 pm 05:09 PM

簡化的HTTP響應在Laravel測試中模擬了

Instagram API簡介 Instagram API簡介 Mar 02, 2025 am 09:32 AM

Instagram API簡介

構建具有Laravel後端的React應用程序:第2部分,React 構建具有Laravel後端的React應用程序:第2部分,React Mar 04, 2025 am 09:33 AM

構建具有Laravel後端的React應用程序:第2部分,React

php中的捲曲:如何在REST API中使用PHP捲曲擴展 php中的捲曲:如何在REST API中使用PHP捲曲擴展 Mar 14, 2025 am 11:42 AM

php中的捲曲:如何在REST API中使用PHP捲曲擴展

在Codecanyon上的12個最佳PHP聊天腳本 在Codecanyon上的12個最佳PHP聊天腳本 Mar 13, 2025 pm 12:08 PM

在Codecanyon上的12個最佳PHP聊天腳本

Laravel中的通知 Laravel中的通知 Mar 04, 2025 am 09:22 AM

Laravel中的通知

See all articles