php一段文件上传代码,高手帮看看,如何修改临时文件名

我发现有汉字的上传上去都是乱码,这个怎么改临时文件名。然后上传到服务器上,前台显示的时候怎么能再让它显示成汉字?<formaction="upload_file.php"... 我发现有汉字的上传上去都是乱码,这个怎么改临时文件名。然后上传到服务器上,前台显示的时候怎么能再让它显示成汉字?

<form action="upload_file.php" method="post" enctype="multipart/form-data">
<label for="file">请选择文件:</label>
<input type="file" name="file" id="file" />
<br />
<input type="submit" name="submit" value="Submit" />
</form>

<?php
//这是上传代码
if ($_FILES["file"]["error"] > 0)
{
echo "文件错误信息: " . $_FILES["file"]["error"] . "<br />";
}
else
{
echo "Upload: " . $_FILES["file"]["name"] . "<br />";
echo "Type: " . $_FILES["file"]["type"] . "<br />";
echo "Size: " . ($_FILES["file"]["size"] / 1024) . " Kb<br />";
echo "Temp file: " . $_FILES["file"]["tmp_name"] . "<br />";

if (file_exists("upload/" . $_FILES["file"]["name"]))
{
echo $_FILES["file"]["name"] . " already exists. ";
}
else
{
move_uploaded_file($_FILES["file"]["tmp_name"],
"upload/" . $_FILES["file"]["name"]);
echo "Stored in: " . "upload/" . $_FILES["file"]["name"];
}
}
?>
展开
 我来答
wo550415979
2012-02-15 · TA获得超过5.9万个赞
知道大有可为答主
回答量:3.7万
采纳率:0%
帮助的人:2.9亿
展开全部
乱码跟临时文件名没有关系,只需要在存储时更改编码为gb2312,显示时转回utf-8等。
我改好了,请看:
<?php
//这是上传代码
if ($_FILES["file"]["error"] > 0)
{
echo "文件错误信息: " . $_FILES["file"]["error"] . "<br />";
}
else
{
$storage_name=iconv("UTF-8","gb2312",$_FILES['file']['name']); //存储时使用gb2312编码,因为你使用的是简体中文操作系统
$display_name=iconv('gb2312','UTF-8',$storage_name); //在网页上显示时使用utf-8或其他编码,视php文件保存时的编码类型而定。保存为utf-8的方法:在<head>标签间加上<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />,然后保存时选择文件编码utf-8,确定保存。
echo "Upload:".$display_name."<br/>";
echo "Type: " . $_FILES["file"]["type"] . "<br />";
echo "Size: " . ($_FILES["file"]["size"] / 1024) . " Kb<br />";
echo "Temp file: " . $_FILES["file"]["tmp_name"] . "<br />";

if (file_exists("upload/" . $storage_name))
{
echo $_FILES["file"]["name"] . " already exists. ";
}
else
{
move_uploaded_file($_FILES["file"]["tmp_name"],
"upload/" . $storage_name);
echo "Stored in: " . "upload/" .$display_name;
}
}
?>
百度网友b263524
2012-02-08 · TA获得超过115个赞
知道小有建树答主
回答量:251
采纳率:0%
帮助的人:191万
展开全部
你加一句这个试试
<META http-equiv=Content-Type content="text/html; charset=gbk">
下面的$name为你想要的名字。
move_uploaded_file($_FILES["file"]["tmp_name"],
$name);
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
avieisjz
2012-02-08
知道答主
回答量:5
采纳率:0%
帮助的人:8057
展开全部
阿姨has地方
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
dxcswl
2012-02-08 · TA获得超过105个赞
知道答主
回答量:193
采纳率:0%
帮助的人:132万
展开全部
这个页面你设置他的编码格式没有 没编码格式 不一样的环境 不一样的
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式