请问怎样才能判断出上传文件名为中文名?

我做上传文件的时候老是出现用户上传一些中文名称的文件名,
后来发现这些中文名称的文件根本不能在网上进行传输, 请问有办法判断出是中文名吗?

作者: dancecat110   发布时间: 2003-07-05

帮帮忙嘛~

作者: dancecat110   发布时间: 2003-07-05

科学的方法是根本不管用户上传的文件名是中文还是日文还是……,全部改成标准的文件名。
或者你可以参考一下base64。

作者: wangtiejun   发布时间: 2003-07-05

我知道有base64这样一个函数但是我试了好几次都试不出来不知道为什么?

作者: dancecat110   发布时间: 2003-07-05

是不是要先用base64_encode编码再用base64_decode解码, 但是为什么我用的时候不对呢?

作者: dancecat110   发布时间: 2003-07-05

各位快帮忙啊~

作者: dancecat110   发布时间: 2003-07-05

用正则表达式,如果文件名不是包含a-z 或0-9 的话,就算他错,也不需要检查什么中文

作者: Belltree   发布时间: 2003-07-05

能写出来让我看看吗?

作者: dancecat110   发布时间: 2003-07-05

<form method="post" >
<input type="file" name="upfile" accept="multipart/form-data">
<input type="submit">
</form>

=================
<?
$name=$upfile_name;
if(!eregi("^[a-z0-9\-\_\.]+$",$name))
  die("invalid file name");
else
{
  // do something
}
?>

作者: guy1218   发布时间: 2003-07-06

好像ord($chr)大于128的都是中文?

作者: ahchao   发布时间: 2003-07-06

不对啊怎么用了
<?
$name=$upfile_name;
if(!eregi("^[a-z0-9\-\_\.]+$",$name))
die("invalid file name");
else
{
// do something
}
?>
这种方法以后明明是英文名称的文件也说不能上传啊!
不信你们看看:http://rsc.nyist.net/dongtai/wenjian/rscnewup.php
是不是正则哪儿错啦?

作者: dancecat110   发布时间: 2003-07-06

不好意思是我搞错了,我把$upfile_name写错了!
不好意思!

作者: dancecat110   发布时间: 2003-07-06