php照片预览附件,图片上传前预览,两种方式可实现

本文探讨了前端使用HTML和jQuery实现表单提交,通过`click`和`change`事件处理图片上传,并通过AJAX与后端PHP和Java的交互。后端展示了如何接收并处理文件上传,包括验证和存储。
摘要由CSDN通过智能技术生成

表单提交,前端html:

image

/**上传头像**/

$('#avatar').click(function () {

$("#image").trigger('click');

});

$('#image').on('change', function () {

var imgdate = $(this).get(0);

var showing = document.getElementById('avatar');

if (imgdate.files && imgdate.files[0]) {

showing.src = window.URL.createObjectURL(imgdate.files[0]);

}

});

后台接收:

public function after_write()

{

if(!empty(Request::instance()->file('image')) && $this->validate !== 'Users.pass')

{

$this['image'] = $this->upload($this['uid']);

$this->validate(false)->setEvent(false)->save($this->data);

}

}

protected function upload($id)

{

$file = Request::instance()->file('image');

$image = $file->move(IMAGE_PATH,$id);

if($image){

return VIEW_IMAGE_PATH . '/' . $image->getSaveName();

}

}

?>

ajax提交,前端html:

添加图片

function upload() {

$('#file').trigger('click');

}

$('#file').on('change',function () {

var uid = $('.ace-thumbnails').data('uid');

var num = parseInt($('.ace-thumbnails').find('li').length)+1;

$('#fileForm').ajaxSubmit(function (result) {

if(result.code){

var _html = '

'+

''+

''+

'150x150'+

''+

'

';

$('.ace-thumbnails').append(_html);

$('.ace-thumbnails [data-rel="colorbox"]').colorbox(colorbox_params);

}

else {

$.alert('添加失败',result.msg,'error');

}

});

});

后台接收:

/**

* @note上传图片

*/

public function uploadImg(){

$file = Request::instance()->file('file');

if(empty($file)){

$this->error('上传数据为空');

}

else{

$info = $file->move(IMAGE_PATH.'/temp/',time().rand(100,999));

if($info == false){

$this->error($file->getError());

}

else{

$image = VIEW_IMAGE_PATH.'/temp/'.$info->getSaveName();

$this->success('上传成功',null,$image);

}

}

}

?>

ajax提交,前端html

{$vo.enum_name}

var imgId;//全局变量

//文件上传触发

function upload(id) {

$('#file').trigger('click');

imgId = id;

}

$('#file').on('change',function () {

$('#fileForm').ajaxSubmit(function (result) {

if(result.code){

$('#img'+imgId).find('ul img').attr('src', result.data);

$('#img'+imgId).find('ul input').val(result.data);

}

else {

layer.alert(result.msg,{icon:2});

}

$("#file").val("");

});

});

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值