위몰 위챗몰 소스코드 플러그인 빅 캐러셀 코드는 상업홍보에 더욱 효과적인 방법입니다. 보다 중요한 코드 중 일부를 기술자들이 학습하고 참고할 수 있도록 공유하고 있습니다.
위몰 위챗몰 소스코드 플러그인 빅 캐러셀 코드는 상업 홍보를 위한 보다 효과적인 방법입니다. 이러한 방식으로 기술자들이 배우고 참고할 수 있도록 더 중요한 코드 중 일부를 공유합니다.
코드 세부정보 주소: http://addon.wemallshop.com/Product/addonList/menu_id/1 또는 www.wemallshop.com
AdminController.class<?php <?php <br />
// +---------------------------------- --- ---------- <br>
// | OneThink [ 생각만 하면 할 수 있어요 ] <br>
// +---------------------------------- --- ---------- <br>
// | 저작권(c) 2013 http://www.onethink.cn <br>
// +---------------------------------- --- ---------- <br>
// | 저자: Maidang Miaoer <zuojiazi> <http:> <br>
// +---------------------------------- --- ---------- <br>
네임스페이스 AddonsWheelController <br>
<br>
AdminController 클래스는 InitController를 확장합니다 <br>
{ <br>
<br>
<br>
// 공개 함수 __construct() <br>
// { <br>
// 부모::__construct() <br>
// } <br>
<br>
공개 함수 인덱스() <br>
{ <br>
$config = M("AddonWheelConfig")->find() <br>
$this->할당("config", $config) <br>
<br>
$record = D('Addons://Wheel/AddonWheelRecord') // 사용자 개체 인스턴스화 <br>
$count = $record->count();//요구 사항을 충족하는 총 레코드 수 쿼리 <br>
$Page = new ThinkPage($count, 12); // 페이징 클래스를 인스턴스화하고 총 레코드 수와 각 페이지에 표시되는 레코드 수를 전달합니다(25) <br>
$Page->setConfig('테마', "<div><ul>
<li>%FIRST%</li>
<li>%UP_PAGE%</li>
<li>%LINK_PAGE%</li>
<li> %DOWN_PAGE%</li>
<li>%END%</li>
<li><a> %HEADER% %NOW_PAGE%/%TOTAL_PAGE% 페이지</a></li>
</ul></div>"); <br>
$show = $Page->show();//페이지 표시 출력 <br>
// 페이징 데이터 쿼리를 수행합니다. Limit 메소드의 매개변수는 Page 클래스 <br>의 속성을 사용해야 합니다.
$record = $record->limit($Page->firstRow . ',' . $Page->listRows)->order("id desc")->relation(true)->select() <br>
<br>
$this->ass("record", $record);// 할당 데이터 세트 <br>
$this->sign('page', $show);// 할당 페이징 출력 <br>
<br>
$this->display();
} <br>
<br>
공개 함수 addConfig() <br>
{ <br>
M("AddonWheelConfig")->where(array("id" => "1"))->save($_POST) <br>
$this->success('설정 성공', '관리자/관리자/색인/애드온/휠') <br>
} <br>
} <br> </http:></zuojiazi>
IndexController.class
/** <?php <br />
* PhpStorm에서 만들었습니다. <br>
* 사용자: heqing <br>
* 날짜: 30년 7월 15일 <br>
* 시간: 09:40 <br>
*/ <br>
<br>
네임스페이스 AddonsWheelController <br>
<br>
// IndexController 클래스는 InitController를 확장합니다 <br>
// { <br>
// 공개 함수 index() <br>
//
// $this->show('SystemInfo 인덱스 인덱스'); <br>
// } <br>
<br>
<br>
// } <br>
<br>
IndexController 클래스는 InitController를 확장합니다 <br>
{ <br>
공개 $appUrl = "" <br>
공개 함수 __construct() <br>
{ <br>
parent::__construct();
$this->appUrl = "http://" . I("server.HTTP_HOST") <br>
} <br>
<br>
공개 함수 init() <br>
{ <br>
return R("앱/공통/초기화") <br>
} <br>
<br>
공개 함수 oauthRegister($wxuser) <br>
{ <br>
return R("App/Common/oauthRegister", array($wxuser)) <br>
} <br>
<br>
공개 함수 인덱스() <br>
{ <br>
$user=R("App/Public/oauthLogin");
<br>
// if (!session("userUid")) { <br>
>
> >
>
>
$url = $weObj->getOauthRedirect($this->appUrl . u_addons('Wheel://App/Index/index')) <br>
헤더("위치: $url"); // 반품; <br>
// } 그렇지 않으면 { <br>
// $wxuser = $weObj->getOauthUserinfo($token["access_token"], $token["openid"]); <br>
// session("userUid", $wxuser["openid"]); <br>
// $this->oauthRegister($wxuser); <br>
// } <br>
// } <br>
<br>
$user = M("사용자")->where(array("uid" => session("userUid")))->find(); <br>
<br>
$config = M("AddonWheelConfig")->find(); <br>
$this->할당("config", $config); <br>
$this->할당("사용자", $user); <br>
<br>
$record = M("AddonWheelRecord")->where(array("user_id" => session("userId")))->order("id desc")->find(); <br>
$this->할당("record", $record); <br>
$this->display(); <br>
} <br>
<br>
/**<br>
* 당첨확률 계산<br>
*/ <br>
함수 lotteryJson() <br>
{ <br>
$today = date("연월일"); <br>
$where["time"] = array("like", $today . "%"); <br>
$where["user_id"] = session("userId"); <br>
$record = D("Addons://Wheel/AddonWheelRecord")->where($where)->find(); <br>
if ($record) { <br>
$this->ajaxReturn("-1"); <br>
반품; <br>
} <br>
<br>
$config = M("AddonWheelConfig")->find(); <br>
//奖품概率 <br>
$proArr = 배열( <br>
'1' => $config["level1_prob"], <br>
'2' => $config["level2_prob"], <br>
'3' => $config["level3_prob"], <br>
'4' => $config["level4_prob"], <br>
'5' => $config["level5_prob"], <br>
'6' => $config["level6_prob"], <br>
'7' => $config["level7_prob"] <br>
); <br>
//奖상품库存 <br>
$proCount = 배열( <br>
'1' => $config["level1_store"], <br>
'2' => $config["level2_store"], <br> '3' => $config["level3_store"], <br>
'4' => $config["level4_store"], <br>
'5' => $config["level5_store"], <br>
'6' => $config["level6_store"], <br>
'7' => $config["level7_store"] <br>
); <br>
$file = './Data/wheel.txt'; <br>
$data = 배열( <br>
'1'=>0,'2'=>0,'3'=>0,'4'=>0,'5'=>0,'6'=>0,<br>
); <br>
if (!file_exists($file)) { <br>
file_put_contents($file, 직렬화($data)); <br>
} 그밖에 { <br>
$str = file_get_contents($file); <br>
$data = 직렬화 해제($str); <br>
} <br>
$rid = $this->getRand($proArr, $proCount); <br>
<br>
if ($rid > 6) { <br>
$rid = 0; <br>
} 그밖에 { <br>
$rid = $this->returnRid($rid, $file, $data, $proCount, $proArr); <br>
} <br>
<br>
M("AddonWheelRecord")->add(array("user_id" => session("userId"), "level" => $rid)); <br>
에코 $rid; <br>
} <br>
<br>
함수 returnRid($rid, $file, $data, $proCount, $proArr) <br>
{ <br>
$data[$rid] = $data[$rid] + 1; <br>
$count = $proCount[$rid]; // 总库存 <br>
if ($count
// 如果抽取的数据大于总库存时库存清0 <br>
$proCount[$rid] = 0; <br>
// 然后继续计算一直计算流某个值的库存不为0 <br>
$rid = returnRid($rid, $file, $data, $proCount, $proArr); <br>
} 그밖에 { <br>
// 写入缓存 <br>
file_put_contents($file, 직렬화($data)); <br>
} <br>
$rid를 반환합니다. <br>
} <br>
<br>
/** <br>
* 中奖概率计算, 能用 <br>
* $proArr = array('1'=>'概率', '2'=>'概率'); <br> * $proCount = array('1'=>'库存', '2'=>'库存'); <br>
*/ <br>
함수 getRand($proArr, $proCount) <br>
{ <br>
$결과 = ''; <br>
$프로섬 = 0; <br>
foreach($proCount($key)=>$val) { <br>
if ($val
계속하다; <br>
} 그밖에 { <br>
$proSum = $proSum + $proArr[$key]; <br>
} <br>
} <br>
foreach($proArr, $key로) => $proCur) { <br>
if ($proCount[$key]
계속하다; <br>
} 그밖에 { <br>
$randNum = mt_rand(1, $proSum); <br>
if ($randNum
$결과 = $키; <br>
부서지다; <br>
} 그밖에 { <br>
$proSum -= $proCur; <br>
} <br>
} <br>
} <br>
설정 해제($proArr); <br>
$결과를 반환합니다. <br>
} <br>
} <br>
<b>InitController.class</b><code class="prettyprint linenums lang-php"><?php <?php <br />
/** <br>
* PhpStorm에서 만들었습니다. <br>
* 사용자: heqing <br>
* 날짜: 30년 7월 15일 <br>
* 시간: 12:11 <br>
*/ <br>
<br>
네임스페이스 AddonsWheelController; <br>
<br>
<br>
CommonControllerAddon을 사용하세요. <br>
<br>
클래스 InitController는 애드온을 확장합니다. <br>
{ <br>
<br>
공개 함수 install() <br>
{ <br>
$install_sql = './Addons/Wheel/Data/install.sql'; <br>
if (file_exists($install_sql)) { <br>
Execute_sql_file($install_sql); <br>
} <br>
$this->success("안전성 구축", "관리자/애드온/애드온"); <br>
} <br>
<br>
공개 함수 uninstall() <br>
{ <br>
$uninstall_sql = './Addons/Wheel/Data/uninstall.sql'; <br>If (file_exists($uninstall_sql)) { <br>
execute_sql_file($uninstall_sql);
~
$this->success("제거됨", "관리자/애드온/애드온") <br>
} <br>
} <br> <br>
프런트 데스크
관리_색인
<section> <br>
~
<h1> <br>
<br> <small>
</small> <br>
</h1> <br>
~
~
~
안에
</section> <br>
<section> <br>
~
~
~
~
~ ~
|
~
~ ~
~<br>
~
~
~
~
~
~
~
~
~
~<br>
~
~
~
~
~
~
~
~
~
~
~
~
~<br>
~
~
~
~
~
~
~
~
~<br>
~
~
~
~
~
~
~
~
~<br>
~
~
~
~
~
~
~
~
~
~<br>
~
~
~
~
~
~
~
~
~
~<br>
~
~
~
~
~
~
~
~
~
~<br>
~
~
~
~
~
~
~
~
~
~<br>
~
~
~
~
~
|
~
~
~
~
~</section>