Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/codeigniter/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用codeigniter和ajax上传图像_Ajax_Codeigniter - Fatal编程技术网

使用codeigniter和ajax上传图像

使用codeigniter和ajax上传图像,ajax,codeigniter,Ajax,Codeigniter,嗨,我正在尝试使用codeigniter和ajax上传一个图像。。上载图像后,错误将显示您尝试上载的文件类型是不允许的。我检查它在上传文件夹没有图像上传。我不知道哪里是我的编码错误有人可以帮我 这是我的观点 <?php defined('BASEPATH') OR exit('No direct script access allowed'); ?><!DOCTYPE html> <html lang="en"> <head> <me

嗨,我正在尝试使用codeigniter和ajax上传一个图像。。上载图像后,错误将显示您尝试上载的文件类型是不允许的。我检查它在上传文件夹没有图像上传。我不知道哪里是我的编码错误有人可以帮我

这是我的观点

<?php
defined('BASEPATH') OR exit('No direct script access allowed');
?><!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="utf-8">
    <title>Welcome to CodeIgniter</title>
        <!-- Latest compiled and minified CSS -->
        <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
        <!-- jQuery library -->
        <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script>
        <!-- Latest compiled JavaScript -->
        <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
        <script>
          $(document).ready(function(){
              $('#upload_form').on('submit',function(e){
                  e.preventDefault();
                  if($('#image_file').val()=='')
                  {
                      alert("Pls Select the Image File");
                  }
                  else{
                      $.ajax({
                          url:"<?php echo base_url()?>Upload/uploadFile",
                          method:"POST",
                          data:new FormData(this),
                          contentType:false,
                          catch:false,
                          processData:false,
                          success:function(data){
                              $('#uploaded_image').html(data);
                          }
                      });
                  }

              });
          });
        </script>
</head>
<body>
<div id="container">
    <h3 align="center"><?php echo $title  ?></h3>
        <form enctype="multipart/form-data" id="upload_form" class="formReset" method="post">
            <div class="control-group form-group">
              <div class="controls">
                    <label>Upload Photo:</label>
                    <input  type="file"  name="image_file" id="image_file">
                    <p class="help-block"></p>
               </div>
              </div>

              <button type="submit" class="btn btn-primary" id="upload" name="upload">Submit</button>
        </form>

        <div id="uploaded_image">

        </div>
</div>
</body>
</html>

欢迎来到CodeIgniter
$(文档).ready(函数(){
$('upload_form')。关于('submit',函数(e){
e、 预防默认值();
if($('#图像文件').val()='')
{
警报(“请选择图像文件”);
}
否则{
$.ajax({
url:“上传/上传文件”,
方法:“张贴”,
数据:新表单数据(本),
contentType:false,
陷阱:错,
processData:false,
成功:功能(数据){
$('#上传的"图像').html(数据);
}
});
}
});
});
上传照片:

提交
这是我的控制器编码

<?php
defined('BASEPATH') OR exit('No direct script access allowed');

class Upload extends CI_Controller {
    public function index()
    {
        $data['title']="Image Upload funtion using ajax in codeigniter";    
            $this->load->view('Upload',$data);
    }
        public function uploadFile(){
           if(isset($_FILES['image_file']['name'])){
               $config['upload_path']='./upload/';
               $config['allowed_types']='jpg/jpeg/png/gif';
               $config['overwrite']=TRUE;
               $config['max_size']='1000000';
               $config['max_height']='1000';
               $config['max_width']='1000';
               $this->load->library('upload', $config);
               if(!$this->upload->do_upload('image_file')){
                   echo $this->upload->display_errors();
               }
               else{
                    $data=$this->upload->data();
                    echo '<img src="'.base_url().'upload/'.$data["file_name"].'"/>';
               }
           }
        }
}

允许的类型应该是管道分隔的,而不是正斜杠

e、 g


可以是数组或管道分隔字符串。

u在脚本中没有像那样获取基本url值。。问题已解决。。。。我更改了编码$this->load->library('upload',$config);如果($this->upload->do_upload(“image_file”){$data=array($upload_data'=>$this->upload->data());echo';
$config['allowed_types'] = 'gif|jpg|jpeg|png';