很简单:假设是<INPUT NAME = "UploadFile" TYPE = "file" SIZE = "30">那用copy($UploadFile,$UploadFile_name)就可以得到原本的文件名了

解决方案 »

  1.   

    上传到服务器不要设置新的文件名,copy($UploadFile,$UploadFile_path)
    $UploadFile是原文件,$UploadFile_path是要上传到服务器的文件路径.
      

  2.   

    晕,看错了,原来是传到库里的,你写入库是将文件名写入一个字段中,在要下载的文件中加入如下代码:
        header("Content-type:$type");
        header("Content-Disposition: attachment; filename=$name");
        echo $data;这个我以前做过,我的范例程序如下:
    <?
    require_once("function/tables.inc");
    conndb();
        $sql    =  "select * from ".$tab." where id=$id";
        $result =  mysql_query($sql);
        if(!$result) die("出错啦: mysql查询语句有错!!");
        $num=mysql_num_rows($result);
        if($num<1) die("无记录");
        $data = mysql_result($result,0,"file_data");
        $type = mysql_result($result,0,"file_type");
        $name = mysql_result($result,0,"file_name");
        header("Content-type:$type");
        header("Content-Disposition: attachment; filename=$name");
        echo $data;
    ?>