php+jquery实现图片上传预览_和拖动位置值,PHP教程:thinkphp jquery实现图片上传和预览效果...

《PHP教程:thinkphp jquery实现图片上传和预览效果》要点:

本文介绍了PHP教程:thinkphp jquery实现图片上传和预览效果,希望对您有用。如果有疑问,可以联系我们。

PHP学习

67ad9b3e5beb8f95e641b65d0239a65a.png

PHP学习那个file按钮样式先忽略

PHP学习点击选择图片(浏览),随便选一张图片

PHP学习

cb32d800ccbcfc126d417138790d5e3a.png

PHP学习js代码如下

PHP学习

//上传图片立即预览

function PreviewImage(imgFile) {

var filextension = imgFile.value.substring(imgFile.value

.lastIndexOf("."), imgFile.value.length);

filextension = filextension.toLowerCase();

if ((filextension != '.jpg') && (filextension != '.gif')

&& (filextension != '.jpeg') && (filextension != '.png')

&& (filextension != '.bmp')) {

alert("对不起,系统仅支持标准格式的照片,请您调整格式后重新上传,谢谢 !");

imgFile.focus();

} else {

var path;

if (document.all)//IE

{

imgFile.select();

path = document.selection.createRange().text;

document.getElementById("photo_info").innerHTML = "";

document.getElementById("photo_info").style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(enabled='true',sizingMethod='scale',src=\""

+ path + "\")";//使用滤镜效果

} else//FF

{

path = window.URL.createObjectURL(imgFile.files[0]);// FF 7.0以上

//path = imgFile.files[0].getAsDataURL();// FF 3.0

document.getElementById("photo_info").innerHTML = "%22+path+%22";

//document.getElementById("img1").src = path;

}

}

}

PHP学习html代码,其实不重要啦

PHP学习

物品图片

选择图片

class="glyphicon glyphicon-picture" aria-hidden="true">

οnchange='PreviewImage(this)' />

style="color: red;">*

 详细描述

name="info_desc" placeholder="如需补充,请填写..." title="可包含中文数字和常用字符">

PHP学习css代码就不上了啊

顺便补充一下thinkphp上传图片代码,把整个发布消息都拷过了算了

PHP学习

public function loseThing(){

$m=M('info');

$m->create();

$upload = new \Think\Upload();// 实例化上传类

$upload->maxSize = 3145728 ;// 设置附件上传大小

$upload->exts = array('jpg', 'gif', 'png', 'jpeg','bmp');// 设置附件上传类型

$upload->rootPath = './Public/';

$upload->savePath = '/Uploads/'; // 设置附件上传目录

$upload->autoSub = false;

// 上传文件

$info = $upload->upload();

if($info) {

// 上传成功

foreach($info as $file){

$m->info_photo=$file['savename'];

}

}

$m->create_time=date('Y-m-d H:i:s',time());

$m->uid=$_SESSION['id'];

$m->username=$_SESSION['username'];

/* $m->user_img=$_SESSION['filename']; */

$m->info_type="寻物启事";//信息类型为失物

$lastId=$m->add();

if($lastId){

$this->success('发布成功');

}else{

$this->error('发布失败,请先登录');

}

}

PHP学习以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持维易PHP.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
实现thinkPHP接收element上传的图片,需要在前端使用Element-ui的上传组件,同时在后端用thinkPHP接收上传的图片并进行处理。 首先,在前端的表单弹框中加入上传组件,代码如下: ``` <template> <el-dialog title="上传图片" :visible.sync="dialogVisible"> <el-upload action="your-upload-url" :headers="{ 'Authorization': 'Bearer ' + token }" :on-success="handleSuccess" :on-error="handleError" :before-upload="beforeUpload" :file-list="fileList" list-type="picture" :data="{ 'type': 'image' }" > <el-button slot="trigger" size="small" type="primary">选择图片</el-button> <div slot="tip" class="el-upload__tip">只能上传jpg/png文件,且不超过5MB</div> </el-upload> <div slot="footer" class="dialog-footer"> <el-button @click="dialogVisible = false">取 消</el-button> <el-button type="primary" @click="submitForm">确 定</el-button> </div> </el-dialog> </template> <script> export default { data() { return { dialogVisible: false, fileList: [], token: localStorage.getItem('token') }; }, methods: { handleSuccess(response, file, fileList) { console.log(response); this.fileList = fileList; this.$message.success('上传成功'); }, handleError(error, file, fileList) { console.log(error); this.$message.error('上传失败'); }, beforeUpload(file) { const isJPG = file.type === 'image/jpeg' || file.type === 'image/png'; const isLt5M = file.size / 1024 / 1024 < 5; if (!isJPG) { this.$message.error('上传图片只能是 JPG/PNG 格式!'); } if (!isLt5M) { this.$message.error('上传图片大小不能超过 5MB!'); } return isJPG && isLt5M; }, submitForm() { // 提交表单 } } }; </script> ``` 其中,`:action` 属性指定上传的地址,`:headers` 属性设置请求头,`:on-success` 和 `:on-error` 属性分别设置上传成功和失败的回调函数,`:before-upload` 属性设置上传前的校验规则,`:file-list` 属性绑定已上传的图片列表,`:data` 属性设置额外的参数。 接下来,在后端用thinkPHP接收上传的图片并进行处理。首先需要在控制器中创建一个上传图片的方法: ``` public function uploadImage() { $file = request()->file('file'); if (!$file) { return json(['code' => -1, 'msg' => '请选择上传的文件']); } $info = $file->validate(['size' => 512000, 'ext' => 'jpg,png'])->move(ROOT_PATH . 'public' . DS . 'uploads'); if ($info) { $url = '/uploads/' . $info->getSaveName(); return json(['code' => 0, 'msg' => '上传成功', 'url' => $url]); } else { return json(['code' => -1, 'msg' => '上传失败:' . $file->getError()]); } } ``` 该方法首先获取上传的文件对象,然后进行校验,最后将文件移动到指定的目录,并返回上传成功后的图片地址。 最后,在前端的上传组件中设置上传成功后的回调函数,将上传成功后返回的图片地址保存到表单中: ``` handleSuccess(response, file, fileList) { console.log(response); this.fileList = fileList; this.$message.success('上传成功'); // 保存图片地址到表单中 let imageUrl = response.url; this.form.image = imageUrl; }, ``` 这样就可以实现thinkPHP接收element上传的图片了。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值