【问题标题】:Storing files from input file filed into temp var before going into the database在进入数据库之前将输入文件中的文件存储到临时变量中
【发布时间】:2016-01-12 07:29:22
【问题描述】:

我想在上传到数据库之前先预览文件,是否可以从输入文件中预览选定的文件?或者我正在考虑先将其存储到临时变量中,然后再将其上传到数据库中。

有没有人可以帮助我?我要上传的文件是 txt 和 xls 文件 以下是可能的当前代码:

查看

<form  id="upload" name="upload" action="<?php echo base_url(); ?>index.php/welcome/upgen048" method="POST" class="form-horizontal" enctype="multipart/form-data" onsubmit="return verify_upload()" >

                    <div class="col-lg-4"></div>    
                    <input type="file" name="uploadData" id="uploadData" style=""/>

                    <br />

                    <div class="text-center">
                    <button type="file" id="submit" value="Submit" class="btn btn-success"><medium><i class="fa fa-upload fa-3x" ></i></br> UPLOAD </medium></button>

                        <!-- Button trigger modal -->
                            <button type="button" class="btn btn-success" data-toggle="modal" data-target="#myModal" <medium><i class="fa fa-upload fa-3x" ></i></br> PREVIEW </medium>
                            </button>

                            <!-- Modal -->
                            <div class="modal fade" id="myModal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel">
                              <div class="modal-dialog" role="document">
                                <div class="modal-content"><!-- modal container -->
                                  <div class="modal-header"><!-- header -->
                                    <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button>
                                    <h4 class="modal-title" id="myModalLabel">Preview</h4>
                                  </div>
                                  <div class="modal-body"><!-- body -->


                                    PREVIEW IN TABLE HERE


                                  </div>
                                  <div class="modal-footer"> <!-- footer -->
                                    <button type="button" class="btn btn-primary" data-dismiss="modal">Close</button>
                                <!--    <button type="button" class="btn btn-primary">Save changes</button> -->
                                  </div>
                                </div>
                              </div>
                            </div>

                    <!-- MODALS -->

                    </div>
                </form>

控制器

function upgen048()
{

    $this->file_path = realpath(navi_ups.'/gen048');

    $config['upload_path'] = $this->file_path;
    $config['max_size'] = 0;
    $config['allowed_types'] = 'txt';
    //$config['overwrite'] = TRUE;

    $this->load->library('upload');
    $this->upload->initialize($config);
    $this->upload->set_allowed_types('*');

    if ( !$this->upload->do_upload('uploadData'))
        {   
                $data['error'] = $this->upload->display_errors();
                $data['main_content'] = 'gen048';
                $this->load->view('includes/template',$data);
        }
    else { //else, set the success message
                $data = array('msg' => "Upload success!");
                $data['main_content'] = 'gen048';
                $this->load->view('includes/template',$data);
                $data['upload_data'] = $this->upload->data();

    }

型号

function srch_gen048()

{
    $sql =" select * from gen_048";
    $query = $this->db->query($sql);
    return($query->num_rows() > 0) ? $query->result(): NULL;
}

【问题讨论】:

    标签: php codeigniter


    【解决方案1】:

    一个过程是为挂起的文件添加一个表。上传会将详细信息插入待处理表中。编辑/更新待处理表中的文件内容。完成后,提交按钮会将待处理表中的行插入gen_048 并删除待处理表中的行。

    我建议添加一个 mysql 事件来清除挂起表中超过时间限制的任何条目,以防有人不发布挂起文件并且也不丢弃它。

    【讨论】:

      【解决方案2】:

      在事件被发送到服务器之前,可以在支持的浏览器上使用 FileReader 对象使用 Javascript 预览选定的表单文件:Preview an image before it is uploaded

      上面的答案是针对图像文件的,但您可以使用诸如 window.open() 之类的东西在新选项卡/窗口上预览文件,而不是将其分配给图像标签。

      【讨论】:

      • 我正在上传一个文本文件,我希望它在表格中预览。我的想法与第一条评论相同,但我没有任何参考,对不起,我只是一个新手
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-08-08
      • 2022-11-13
      • 2014-01-16
      • 1970-01-01
      • 2013-11-10
      • 2016-04-23
      • 1970-01-01
      相关资源
      最近更新 更多