PHP在MySql中存取文件

先建张表

create table if not exists binary_files(
id int(4) unsigned not null auto_increment primary key,
file_name varchar(250) not null,
file_data longblob not null);

PHP中测试

<?php
header('Content-type:text/html;charset=utf-8');

if( $_FILES['myfile'][error] === 0){
    if(is_uploaded_file($_FILES['myfile']['tmp_name'])){
        echo "{$_FILES['myfile']['tmp_name']}"."文件大小:".filesize($_FILES['myfile']['tmp_name']);
        
        if( $read_file_handle = fopen($_FILES['myfile']['tmp_name'],'r') ){
            $read_buffer = fread($read_file_handle,filesize($_FILES['myfile']['tmp_name']));

            try{
            $pdo = new PDO('mysql:dbname=files;host=localhost','root','123456');
            }catch(PDOException $e){
                die('connect mysql fail'.$e->getMessage());
            }
                        //向表中插入文件数据
            $pdostmt = $pdo->prepare('insert into binary_files (file_name,file_data) values(?,?)');
            $pdostmt->execute(array($_FILES['myfile']['name'],$read_buffer));
            $read_buffer = '';
            
            @fclose($read_file_hanle);
            @unlink($_FILES['myfile']['tmp_name']);
            
            if( !file_exists('savefiles')){
                mkdir('savefiles');
            }
            
            //从数据库中读取文件,在输出 看看对不对
            $pdostmt = $pdo->prepare('select file_data from binary_files where file_name=?');
            $pdostmt->execute(array($_FILES['myfile']['name']));
            $fetch_result = $pdostmt->fetch(PDO::FETCH_ASSOC);
            $put_buffer = $fetch_result['file_data'];
            echo $put_buffer;
            file_put_contents('./savefiles/'.$_FILES['myfile']['name'],$put_buffer);
        }   
    }
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 一、需求来源 最近在做一个就业信息发布网站,发布每天的南北校宣讲会信息。此时前端模型已经搭建好,用的是HTML+C...
    treker阅读 11,588评论 4 30
  • Welcome 目前网络上充斥着大量的陈旧信息,让PHP新手误入歧途,传播着错误的实践和糟糕的代码,这必须得到纠正...
    layjoy阅读 21,793评论 7 118
  • 月过半弦,夏风从漆黑中轻悄悄地穿过一片波涛诡谲的海,踏过一座看似荒凉的山,慢慢地融进了这七彩霓虹的城,卷起一缕猩红...
    鹤洺阅读 3,860评论 2 45
  • 【传说】东北大院那些事 目录 夜已深,泰安睡不着,在他幼小的想法中总觉得吴司令的二婚就像是一种背叛。辗转反侧,最仲...
    续事创意写作工作室阅读 2,870评论 0 2
  • 端午一天假期休息后果然还是比较好使的,今天工作起来精力充沛。上午在未来汇死皮赖脸混了一上午,好利来的店员给我倒水给...
    念美美阅读 1,234评论 1 1

友情链接更多精彩内容