这与你的服务器无关的.
不知道你留意了没有,很多使用中文文件名提供下载的站点,都有这样一句话:
"请把Internet选项中的 始终使用UTF-8发送URL 前面的勾去掉."只要去掉这个勾就可以了.对于APACHE服务器 还有一种方法 是把目录列表出来 然后点击下载 但不推荐

解决方案 »

  1.   

    <?
    $link=mysql_connect("localhost","user","pws");
    $select=mysql_select_db("test",$link);
    $query="select * from software";
    $result=mysql_query($query,$link);
    $i=mysql_fetch_array($result);
    echo "<a href='$i[2]'>QQ</a>";
    ?>
    $i[2]的值是一个以中文命名的文件,
    TO小:我试过了在IE的属性里,我并没有去掉你所说的那项,但在9SKY或SOGUA.COM里下载MP3,也可以下载(我用的是FLASHGET)!TO虫:不好意思,我问的不是这个,你看看我的CODE吧!令到您问非所答,非常抱歉!
      

  2.   

    嗯,用flashget等不受这个限制呀.我说的是直接用IE下载.你的代码有什么问题吗?我觉得很正常.
      

  3.   

    TO小:呵呵~!~是吗?!这个我可不知道.
    但是奇怪的是:我用FALSHGET在别人的站里下载就没错误,
    但是在我自己的网站里下载就出错误了! 
    我有这样一个表:software
    ID        NAME       PATH
    0         软件1      x:\dir1\dir2\软件1.EXE
    1         软件2      x:\dir1\dir2\软件2.EXE
    3         软件3      x:\dir1\dir2\软件3.EXE
    ////////用以下的程序读取记录:
    <?
    $link=mysql_connect("localhost","user","pws");
    $select=mysql_select_db("test",$link);
    $query="select * from software";
    $result=mysql_query($query,$link);
    $i=mysql_fetch_array($result);
    echo "<a href='$i[2]'>QQ</a>";
    ?>
    现在'$i[2]'的值是"x:\dir1\dir2\软件3.EXE",我说得对吗?!
    但是只要我下载时,就会出现错误,但要是把"x:\dir1\dir2\软件3.EXE"改为"x:\dir1\dir2\software3.exe",下载时就没错误,能正常下载.
    那是不是表明在MYSQL的记录里或HTML里的<A>标记不能用中文呢?!
    若能,该怎写呢?!
      

  4.   

    我以前也听说过这种问题:
    我使用的是Linux+PHP+MySQL,程序就支持中文路径;
    而我同学使用Windows+PHP+MYSQL,就不支持中文路径名了。
    我也觉得很不可思意,而且我两都使用了系统的默人设置,即对系统未做什么修改。
      

  5.   

    to seebi(芝See菇Bi):
    我觉得很奇怪..
    你的表内容其实有点不对的...PATH不应该用盘符+路径+文件名的形式 而应该用服务器上的路径来表示.因为你的操作是针对服务器进行的.