如何利用php+mysql保存和输出文件 - php语言 -

如何利用php+mysql保存和输出文件

时间:2013-04-10 12:52:09   来源:   评论:加载中...   点击:加载中...
本地文件上传到服务器后,服务器的脚本对文件进行保存,一般有两种方式...

(3)submit.php ---
//简要说明
把用户上传得文件连同文件的基本信息保存到数据库里
//程序源码
<?php  
    if($myfile != "none" && $myfile != "") { //有了上传文件了 

        //设置超时限制时间,缺省时间为 30秒,设置为0时为不限时
        $time_limit=60;         
        set_time_limit($time_limit); //

        //把文件内容读到字符串中
        $fp=fopen($myfile,  "rb");
        if(!$fp) die("file open error");
        $file_data = addslashes(fread($fp, filesize($myfile)));
        fclose($fp);
        unlink($myfile); 
            
        //文件格式,名字,大小
        $file_type=$myfile_type;
        $file_name=$myfile_name;
        $file_size=$myfile_size;
    
        //连接数据库,把文件存到数据库中
        $conn=mysql_connect("127.0.0.1","***","***");
        if(!$conn) die("error : mysql connect failed");
        mysql_select_db("test",$conn);
        
        $sql="insert into receive 
        (file_data,file_type,file_name,file_size) 
        values ('$file_data','$file_type','$file_name',$file_size)";
        $result=mysql_query($sql);
    
        //下面这句取出了刚才的insert语句的id
        $id=mysql_insert_id();
    
        mysql_close($conn);
        
        set_time_limit(30); //恢复缺省超时设置 
        
        echo "上传成功--- ";
        echo "<a href='show_info.php?id=$id'>显示上传文件信息</a>";
    }  
    else {  
        echo "你没有上传任何文件";  
    }  
?> 

//////////////////////////////////////////////////////////////////////
(4)show_info.php ---
//简要说明
从数据库里取出文件的基本信息[文件名和文件大小]。
//程序源码
<?php        
    if(!isset($id) or $id=="") die("error: id none");
    
    //定位记录,读出
    $conn=mysql_connect("127.0.0.1","***","***");
    if(!$conn) die("error: mysql connect failed");
    mysql_select_db("test",$conn);
    
    $sql =  "select file_name ,file_size from receive where id=$id";
    $result = mysql_query($sql);
    if(!$result) die(" error: mysql query");
    
    //如果没有指定的记录,则报错
    $num=mysql_num_rows($result);
    if($num<1) die("error: no this recorder");
    
    //下面两句程序也可以这么写
    //$row=mysql_fetch_object($result);
    //$name=$row->name;
    //$size=$row->size;
    $name = mysql_result($result,0,"file_name");
    $size = mysql_result($result,0,"file_size");

    mysql_close($conn);

    echo "<hr>上传的文件的信息:";
    echo "<br>The file's name - $name";  
    echo "<br>The file's size - $size"; 
    echo "<br><a href=show_add.php?id=$id>附件</a>";
?>



相关热词搜索:

 
上一篇:多php服务器实现多session并发运行
下一篇:高手传经:学习PHP重在坚持
收藏 将此文推荐给朋友
分享到: