微信本地图片上传公众号,上传数据库(media_id)

public function uploadimg($url){
        $access_token = getAccess_token();
        include APP_PATH . 'LaneWeChat/lanewechat.php';

        //上传永久图片的API
        $api = "https://api.weixin.qq.com/cgi-bin/material/add_material?access_token=$access_token&type=image";

        $file = realpath('.' . $url);

        $data['media'] = '@' . $file;
        $ret = Curl::callWebServer($api,$data,'post',1,0);

        if (isset($ret['media_id'])) {
            return array('media_id'=>$ret['media_id']);
        }else{
            return "本地图片上传公众号失败" . json_encode($ret);
        }

    }

    public function uploadMediaNews($news_id){
        $where['news_id'] = $news_id;
        $data = M('media_news_list')->field('id,thumb_media_id,cover')->where("news_id=$news_id")->select();

        // dump($data);
        // exit();

        foreach ($data as $key => $value) {
            if (empty($value['thumb_media_id'])) {
                $ret = $this->uploadimg($value['cover']);

                if (is_array($ret)) {
                    M('media_news_list')->where("id={$value['id']}")->setField('thumb_media_id',$ret['media_id']);
                }else{
                    echo $ret;
                    exit();
                }
            }
        }


        $articles = M('media_news_list')->field('thumb_media_id,author,title,content_source_url,content,digest,show_cover_pic')->where($where)->order('id')->select();

        include APP_PATH . 'LaneWeChat/lanewechat.php';
        $result = AdvancedBroadcast::uploadNews($articles);

        // dump($result);
        // exit();
        
        if (isset($result['media_id'])) {
            $arr['media_id'] = $result['media_id'];
            $arr['status_type'] = 1;
            M('media_news')->where($where)->save($arr);
            echo "上传成功!";
        }else{
            echo "上传失败," . json_encode($result);
        }
    }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值