php base64圖片上傳

<img src="{$list.img}" id="input_img" class="max-width:200px;">
<input type="hidden"  name="img" id="input_imgName" value="">
<input type="hidden" id="oldImg" value="{$list.img}">

<input type="file" id="file_img"/>


<script>   
function readFile(){ 
	var file = this.files[0];  
	if(!/image\/\w+/.test(file.type)){ 
	alert("只能上傳圖片"); 
	return false; 

	var reader = new FileReader(); 
	reader.readAsDataURL(file); 
	reader.onload = function(e){ 
		var postData = {
			'result':this.result,
			'oldImg':$('#oldImg').val()
		}
		$.post("{:U('Banner/saveBase64Img')}",postData,function(data){
			console.log(data);
			$('#input_img').attr('src','/'+data.data).css({'max-width':'200px'}); 
			$('#input_imgName').val('/'+data.data);
			img_area.style.maxWidth = "200px"; 
		});
	}
} 

$(function(){
	if ( typeof(FileReader) === 'undefined' ){ 
		result = "請使用現代瀏覽器操作"; 
		alert(result);
		$('#input_img').attr('disabled','disabled');
	} else { 
		$('#input_img').addEventListener( 'change',readFile,false );
	} 
});



public function saveBase64Img(){
	$oldImg = I('oldImg');
	if(empty($oldImg)){
		if(file_exists($file)){ 
			if (unlink($file)){
				return true;
			}
		} 
	}
	$base64_image_content = I('result');
	header('Content-type:text/html;charset=utf-8');
	//匹配出圖片的格式
	if (preg_match('/^(data:\s*image\/(\w+);base64,)/', $base64_image_content, $result)){
		$type = $result[2];
		$new_file = "./Public/Uploads/".time().".{$type}";
		if (file_put_contents($new_file, base64_decode(str_replace($result[1], '', $base64_image_content)))){
			$this->ajaxReturn(array('code'=>2000,'msg'=>'upload img ok','data'=>$new_file));
		}
	}
}



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章