ci框架+ajax上传文件

前台上传部分

function funUpload() {
		var fd = new FormData();
        //这个地方是你的文件对象
        var file;
		fd.append('file', file);//加入文件对象
		$.ajax({
            //上传路径
			url:"<?= site_url('toefltpo/speaking_answer') ?>",
			type:"post",
			data:fd,
			processData:false,
			contentType:false,
			success:function(res){
				var res = JSON.parse(res);
				if(res.code == 0){
					console.log('上传成功');
                    //2秒之后跳转
					setTimeout(function () {
						window.location.href="<?= site_url('toefltpo/toefltpo_speaking_twostart?speaking_id='.$speaking_id.'&tpo_id='.$tpo_id) ?>";
					},2000);
				}
			},
		})
	}

ci后台的php代码

function speaking_answer(){
		$speaking_id = (int)$this->input->post('id');
//		$path = $_FILES['file'];
//		var_dump($path);
//		$path = addslashes(fread(fopen($path['tmp_name'],"r"),$path['size']));
		$file = $_FILES['file'];
		$path = 'uppic/speaking/'.date("Y").'/'.date('m').'/'.date('d');
		if(!is_dir($path))
		{
			if (!mkdir($path,0777,true))
			{
				$result = array(
					'code' => '205',
					'message' => '创建文件夹失败'
				);
				exit(json_encode($result,JSON_UNESCAPED_UNICODE));
			}
		}
		$str = date("mdHis").rand(10000,99999).substr($file['name'],strripos($file['name'],'.'));
		$head_url = $path.'/'.$str;
		if(move_uploaded_file($file['tmp_name'],$head_url))
		{
			//echo json_encode(array('file'=>base_url().$head_url));
			$this->load->model('ser_toeflspeaking');
			$u_id = $this->session->userdata('userid');
			$data = array(
				'answer' => $head_url,
				'speaking_id' => $speaking_id,
				'u_id' => $u_id,
			);
			$res = $this->ser_toeflspeaking->speaking_select($speaking_id,$u_id);
			if($res){
				$query = $this->ser_toeflspeaking->speaking_update($res['id'],$data);
			}else{
				$query = $this->ser_toeflspeaking->speaking_save($data);
			}
			if($query){
				buildJSON('', 0, "保存成功", null);
			}else{
				buildJSON('', -1, "保存失败", null);
			}
		}
	}

猜你喜欢

转载自blog.csdn.net/qq_35960620/article/details/83544490