通过微店开放平台自主型应用的订单消息推送功能,实现了微店虚拟商品自动发货。
消费url 形如:http://wd.17train.com/index.php/Admin/Index/api/uid/3public function api(){<br>
$get = implode("-",$_GET);<br>
$getinfo = explode("-",$get);<br>
<br>
if (!file_exists('Public/Data/'.$getinfo[0])){ <br>
mkdir ('Public/Data/'.$getinfo[0]);<br>
}<br>
if(!empty($_POST)){<br>
file_put_contents('Public/Data/'.$getinfo[0].'/'.$getinfo[1].'.txt',$_POST);<br>
<br>
$this->json_jx($getinfo[1],$getinfo[0]);<br>
}<br>
}<br>
<br>
public function json_jx($filename,$uid){<br>
<br>
$str = file_get_contents("http://".$_SERVER['SERVER_NAME']."/Public/Data/".$uid."/".$filename.".txt");<br>
$str = str_replace('{"x_forwarded_for":null}',"",$str);<br>
$json = json_decode($str,true);<br>
if($json['type'] == 'weidian.order.already_payment'){<br>
if(empty($json['message']['send_time'])){ $time = time();}else{ $time = $json['message']['send_time'];}<br>
if(empty($json['message']['pay_time'])){ $time2 = time();}else{ $time2 = $json['message']['pay_time'];}<br>
$arr = array(<br>
'order_id'=>$json['message']['order_id'],<br>
'buyer_note'=>$json['message']['note'],<br>
'item_id'=>$json['message']['items'][0]['item_id'],<br>
'sku_id'=>$json['message']['items'][0]['sku_id'],<br>
'uid'=>$uid,<br>
'time'=>$time,<br>
'order_time'=>$time2,<br>
'status'=>$json['message']['status']<br>
);<br>
$res = M('order')->add($arr);<br>
$grinfo = M('mail')->where('uid = '.$uid)->find();<br>
if($grinfo['type'] == 1){<br>
$conf = array(<br>
'MAIL_HOST' =>$grinfo['smtp'],//smtp服务器的名称<br>
'MAIL_SMTPAUTH' =>TRUE, //启用smtp认证<br>
'MAIL_USERNAME' =>$grinfo['username'],//你的邮箱名<br>
'MAIL_FROM' =>$grinfo['username'],//发件人地址<br>
'MAIL_FROMNAME'=>'微店自动发货助手',//发件人姓名<br>
'MAIL_PASSWORD' =>$grinfo['password'],//邮箱密码<br>
'MAIL_CHARSET' =>'utf-8',//设置邮件编码<br>
'MAIL_ISHTML' =>TRUE, // 是否HTML格式邮件<br>
);<br>
}else{<br>
$conf = array(<br>
'MAIL_HOST' =>'smtp.163.com',//smtp服务器的名称<br>
'MAIL_SMTPAUTH' =>TRUE, //启用smtp认证<br>
'MAIL_USERNAME' =>'weidianzhushou@163.com',//你的邮箱名<br>
'MAIL_FROM' =>'weidianzhushou@163.com',//发件人地址<br>
'MAIL_FROMNAME'=>'微店自动发货助手',//发件人姓名<br>
'MAIL_PASSWORD' =>'xxxxxxxxxx',//邮箱密码<br>
'MAIL_CHARSET' =>'utf-8',//设置邮件编码<br>
'MAIL_ISHTML' =>TRUE, // 是否HTML格式邮件<br>
);<br>
}<br>
$mail = M('send')->where("sku_id = '".$arr['sku_id']."'")->find();<br>
$mail2 = M('send_kami')->where("`sku_id` = ".$arr['sku_id']." and `isuse` = 0 ")->find();<br>
if($mail['type'] == 0){<br>
$title = $mail['title'];<br>
$content = $mail['content'];<br>
}else{<br>
$title = $mail['title'];<br>
$content = $mail2['kahao']."--".$mail2['mima'];<br>
}<br>
<br>
$srs = SendMail($arr['buyer_note'],$title,$content,$conf);<br>
if($mail['type'] == 1){<br>
$ww = array(<br>
'isuse'=>1<br>
);<br>
M('send_kami')->where('id = '.$mail2['id'])->save($ww);<br>
}<br>
<br>
$ress = M('user')->where('id = '.$uid)->find();<br>
if($ress['sctime'] != date('Ymd')){<br>
$this->aksc($uid);<br>
$ress = M('user')->where('id = '.$uid)->find();<br>
}<br>
<br>
$ak = $ress['ak'];<br>
$urll = "http://api.vdian.com/api?param={\"order_id\":\"{$arr['order_id']}\",\"express_type\":\"999\",\"express_no\":\"1234566788\"}&public={\"method\":\"vdian.order.deliver\",\"access_token\":\"{$ak}\",\"version\":\"1.0\",\"format\":\"json\"}";<br>
$ra = https_request($urll,$ra);<br>
$results = json_decode($ra,true);<br>
$crr = array(<br>
'isfh'=>1<br>
);<br>
M('order')->where('order_id = '.$arr['order_id'])->save($crr);<br>
}<br>
<br>
<br>
}<br>
<br>
public function wdfh($uid,$order_id){<br>
$where['id'] = $uid;<br>
$res = M('user')->where($where)->find();<br>
if($res['sctime'] != date('Ymd')){<br>
$this->aksc($where['id']);<br>
}<br>
<br>
$ra = https_request($urls,$ra);<br>
$results = json_decode($ra,true);<br>
if($results['status']['status_reason'] == 'success'){<br>
$w['status'] = 'send';<br>
M('order')->where("order_id = '".$order_id."'")->save($w);<br>
}<br>
}<br>
<br>
public function aksc($uid){<br>
$where['id'] = $uid;<br>
$res = M('user')->where($where)->find();<br>
$url = "https://api.vdian.com/token?grant_type=client_credential&appkey=".$res['appkey']."&secret=".$res['secret'];<br>
<br>
$r = https_request($url,$r);<br>
$akarr = json_decode($r,true);<br>
if(!empty($akarr)){<br>
$aa = array(<br>
'ak'=>$akarr['result']['access_token'],<br>
'sctime'=>date('Ymd')<br>
);<br>
$rr = M('user')->where("id = ".$uid)->save($aa);<br>
return $rr;<br>
}<br>
}
函数/**<br>
* 邮件发送函数<br>
*/<br>
function sendMail($to, $title, $content,$conf) {<br>
<br>
Vendor('PHPMailer.PHPMailerAutoload'); <br>
$mail = new PHPMailer(); //实例化<br>
$mail->IsSMTP(); // 启用SMTP<br>
$mail->Host=$conf['MAIL_HOST']; //smtp服务器的名称(这里以QQ邮箱为例)<br>
$mail->SMTPAuth = $conf['MAIL_SMTPAUTH']; //启用smtp认证<br>
$mail->Username = $conf['MAIL_USERNAME']; //你的邮箱名<br>
$mail->Password = $conf['MAIL_PASSWORD'] ; //邮箱密码<br>
$mail->From = $conf['MAIL_FROM']; //发件人地址(也就是你的邮箱地址)<br>
$mail->FromName = $conf['MAIL_FROMNAME']; //发件人姓名<br>
$mail->AddAddress($to,"尊敬的客户");<br>
$mail->WordWrap = 50; //设置每行字符长度<br>
$mail->IsHTML($conf['MAIL_ISHTML']); // 是否HTML格式邮件<br>
$mail->CharSet=$conf['MAIL_CHARSET']; //设置邮件编码<br>
$mail->Subject =$title; //邮件主题<br>
$mail->Body = $content; //邮件内容<br>
$mail->AltBody = "这是一个纯文本的身体在非营利的HTML电子邮件客户端"; //邮件正文不支持HTML的备用显示<br>
return($mail->Send());<br>
}<br>
<br>
<br>
function https_request($url, $data = null)<br>
{<br>
$curl = curl_init();<br>
curl_setopt($curl, CURLOPT_URL, $url);<br>
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE);<br>
curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, FALSE);<br>
if (!empty($data)){<br>
curl_setopt($curl, CURLOPT_POST, 1);<br>
curl_setopt($curl, CURLOPT_POSTFIELDS, $data);<br>
}<br>
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);<br>
$output = curl_exec($curl);<br>
curl_close($curl);<br>
return $output;<br>
}<br>
表结构
附件是数据库结构
weidian.zip
( 1.88 KB 下载:0 次 )
AD:真正免费,域名+虚机+企业邮箱=0元

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

禪工作室 13.0.1
強大的PHP整合開發環境

MinGW - Minimalist GNU for Windows
這個專案正在遷移到osdn.net/projects/mingw的過程中,你可以繼續在那裡關注我們。 MinGW:GNU編譯器集合(GCC)的本機Windows移植版本,可自由分發的導入函式庫和用於建置本機Windows應用程式的頭檔;包括對MSVC執行時間的擴展,以支援C99功能。 MinGW的所有軟體都可以在64位元Windows平台上運作。

記事本++7.3.1
好用且免費的程式碼編輯器

mPDF
mPDF是一個PHP庫,可以從UTF-8編碼的HTML產生PDF檔案。原作者Ian Back編寫mPDF以從他的網站上「即時」輸出PDF文件,並處理不同的語言。與原始腳本如HTML2FPDF相比,它的速度較慢,並且在使用Unicode字體時產生的檔案較大,但支援CSS樣式等,並進行了大量增強。支援幾乎所有語言,包括RTL(阿拉伯語和希伯來語)和CJK(中日韓)。支援嵌套的區塊級元素(如P、DIV),

Atom編輯器mac版下載
最受歡迎的的開源編輯器