微信开发之图文群发

1.首先要把图文的信息存进数据库,然后把图文的信息在页面上显示出来,通过上传把返回的media_id存进media_news(media_id)和media_news_list(thumb_media_id).

2.第一步将图文信息存进数据库:

    

	public function addnews(){
		if(IS_GET){
			$this->display();
		}else{	
			$mp=getCurrentMp();//获取当前公众号信息
			$mp_id=$mp['id'];
			$data=I('post.');
			$data=$data['data'];
			foreach ($data as $key => &$value) {
				$value['mp_id']=$mp_id;
				$value['create_time']=time();
				if($key==0){
					$news_id=M('media_news')->add($value);
				}
				$value['news_id']=$news_id;
				$ret=M('media_news_list')->add($value);
			}					
			if($ret){
				$this->ajaxReturn(array('status'=>1,'msg'=>'成功'));
			}else{
				$this->ajaxReturn(array('status'=>0,'msg'=>'失败'));
			}
		}
	}
}

3.显示图文信息:

   

public function index(){
		    $mp=getCurrentMp();//获取公众号
			$mp_id=$mp['id'];		
			$arr=M('media_news')->where("mp_id='$mp_id'")->select();//查询公众号当前的图文
			$data=array();
			foreach ($arr as  $value) {
				$news_id=$value['news_id'];
				$ret=M('media_news_list')->where("news_id='$news_id'")->select();
				$value['list']=$ret;
				$data[]=$value;
			}
			// print_r($data);
			$this->assign('data',$data);
			$this->display('newslist');
			// exit;
		
		
	}

4.将返回的media_id存进表:

  

$newid=I('news_id');//获取news_id
		// echo $newid;
		// exit;
		$accessToken=getAccess_token();//获取access_token
		include APP_PATH . 'LaneWeChat/lanewechat.php';	
		$url1="https://api.weixin.qq.com/cgi-bin/material/add_material?access_token=$accessToken&type=image";
		$con['news_id']=$newid;
		$url=M('media_news_list')->where($con)->getField('cover',true);
		foreach ($url as  $value) {
				$file=realpath('.'. $value);//相对路径->绝对路径
				$data['media']=Curl::addFile($file);	
				$ret=Curl::callWebServer($url1,$data,'post',1,0);
				$data['thumb_media_id']=$ret['media_id'];
				$re['media_id']=$ret['media_id'];
				$con['news_id']=$newid;
				M('media_news')->where($con)->save($re);
				M('media_news_list')->where($con)->save($data);
		}	


猜你喜欢

转载自blog.csdn.net/mo3408/article/details/80045389
今日推荐