如果我已经有一个表单,如何在Codeigniter中上传图像


How to upload image in Codeigniter if I already have one form?

我的问题是,如果我已经有表单,如何上传图像?

我希望只需点击一次按钮即可上传

    <form class="form-horizontal" role="form" method="post" action="/controller/method">
    <div class="form-group">
        <label for="test" class="col-xs-8 control-label">Test:</label>
        <div class="col-xs-8">
            <input type="text" class="form-control" id="test" name="test" placeholder="" value="">
        </div>
    </div>
    <div class="form-group">
        <label for="file" class="col-xs-8 control-label">File:</label>
        <div class="col-xs-8">
            <input type="file" id="file" name="file" class="file">
        </div>
    </div>

这只是张贴选定的文件名。我必须验证每个输入,如果有办法,我不想创建新的控制器功能。

使用此编码,您可以上传文件[view]

<div class="form-group">
                                            <label for="exampleInputFile">Image Upload</label>
                                            <input id="myfile" name="myFile" type="file" />
                                            <label id="upload-error" style="color:red;display: none;">Choose File</label>
                                        </div>

对于控制器

if($this->input->post('select'))
                    { 
                       $image=array();
                       $image_title=  $this->input->post('title');
                            $folder="./img/uploadimg/";
                            if(is_uploaded_file($_FILES['myFile']['tmp_name']))
                            {
                            if(copy($_FILES['myFile']['tmp_name'],$folder.$_FILES['myFile']['name']))
                            {
                                $source= $folder.$_FILES['myFile']['name'];
                                $source_image=$_FILES['myFile']['name'];
                                $img_path=explode(".", $source_image);
                            }
                            $image['filepath']=$source;
                            $image['filename']=  $this->input->post('title');
                            }