600字范文,内容丰富有趣,生活中的好帮手!
600字范文 > PHP处理公众号 上传图片

PHP处理公众号 上传图片

时间:2024-06-17 18:17:01

相关推荐

PHP处理公众号 上传图片

第一步:引入工作

<script src="https://res./open/js/jweixin-1.2.0.js"></script><script>wx.config({debug: false, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。appId: '<?=$signPackage["appId"];?>', // 必填,公众号的唯一标识timestamp:'<?=$signPackage["timestamp"];?>', // 必填,生成签名的时间戳nonceStr: '<?=$signPackage["nonceStr"];?>', // 必填,生成签名的随机串signature: '<?=$signPackage["signature"];?>',// 必填,签名,见附录1jsApiList: ['checkJsApi','startRecord','stopRecord','translateVoice','scanQRCode',// 微信扫一扫接口'openCard','getLocation','chooseImage',//拍照或选择图片'uploadImage',//上传图片'downloadImage','getLocalImgData',] // 必填,需要使用的JS接口列表,所有JS接口列表见附录2});wx.ready(function() {wx.checkJsApi({jsApiList : ['scanQRCode','getLocation','chooseImage',//拍照或选择图片'uploadImage',//上传图片'downloadImage','getLocalImgData',],success : function(res) {// console.log(res);}});});</script>

第二步:前端将本地id与服务器id保存,并且相关联

var images = {localId: [],serverId: [],arr:[]};wx.chooseImage({count: 1, // 默认9// sizeType: ['original', 'compressed'], // 可以指定是原图还是压缩图,默认二者都有sourceType: ['album', 'camera'], // 可以指定来源是相册还是相机,默认二者都有success: function(res) {images.localId = res.localIds;var key = res.localIds;wx.uploadImage({localId: images.localId[i],success: function(res) {images.serverId.push(res.serverId);images.arr[key] = res.serverId;},fail: function(res) {alert(JSON.stringify(res));}});}}});

第三步: 将图片id上传

$.ajax({url:'/patient/visit/photo_save',type:'post',data:{serverid:serverid,el:el,//图片名称},async: false, // 使用同步操作timeout : 50000, //超时时间:50秒success:function (data) {},error:function (data) {alert(JSON.stringify(data));}})

第四步:PHP后端

$photo = (strpos($serverid,'@@') !== false)?explode('@@',$serverid):array();if(count($photo)){$jssdk = new JSSDK();//需要引入公众号的jssdk文件$access_token = $jssdk->getAccessToken();foreach ($photo as $key=>$value){if($value){//根据微信JS接口上传了图片,会返回上面写的images.serverId(即media_id),填在下面即可$str = "http://file.api./cgi-bin/media/get?access_token=".$access_token."&media_id=".$value;//获取微信“获取临时素材”接口返回来的内容(即刚上传的图片)$a = file_get_contents($str);$inspect->photo = $fail.$key.'.jpg';//新文件名$resource = fopen("/images/medical/".$inspect->photo , 'w+');//以读写方式打开一个文件,若没有,则自动创建fwrite($resource, $a);//将图片内容写入上述新建的文件fclose($resource);//关闭资源}}}

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。