>CMS 튜토리얼 >엠파이어 CMS >Imperial ECMS를 사용하여 한 번에 새로 고치지 않고 장바구니에 추가하는 AJAX를 구현하는 방법

Imperial ECMS를 사용하여 한 번에 새로 고치지 않고 장바구니에 추가하는 AJAX를 구현하는 방법

silencement
silencement앞으로
2019-11-28 14:33:072349검색

Imperial ECMS를 사용하여 한 번에 새로 고치지 않고 장바구니에 추가하는 AJAX를 구현하는 방법

장바구니에 AJAX 없는 새로 고침을 구현하는 Empire ECMS의 주요 단계는 다음과 같습니다.

1. 쇼핑몰 수정 콘텐츠 템플릿을 추가하고 다음 헤더 코드를 추가합니다.

코드는 다음과 같습니다.

<script type="text/javascript" src="[!--news.url--]skin/default/js/jquery.js"></script>
<script type="text/javascript" src="[!--news.url--]skin/default/js/addBuyCar.js"></script>
<script type="text/javascript">
var newsurl=&#39;<?=$public_r[newsurl]?>&#39;;
</script>

2. 쇼핑몰 콘텐츠 템플릿을 수정하고 장바구니 부분을 다음 코드에 추가합니다.

코드는 다음과 같습니다.# 🎜🎜#

<a href="#ecms" onclick="AddProduct([!--classid--],[!--id--]);">加入购物车</a>

"

EmpirecmsTutorial"을 공부하는 것이 좋습니다

3. As jquery 파일의 경우 버전 1.3 및 1.4와 호환되며 직접 다운로드할 수 있습니다. addBuyCar.js 파일의 소스 코드는 다음과 같습니다.


코드는 다음과 같습니다.


function AddProduct(classid,id) {
$.ajax({
type: "post",
url: newsurl+"e/template/ShopSys/addBuyCar.php",
data:"classid="+classid+"&id="+id,
dataType: "json",
success: function (json) {
alert(json.msg);
}
})
}

4. 핸들러 e를 추가합니다. /template/ShopSys/addBuyCar.php , 소스 코드는 다음과 같습니다.

코드는 다음과 같습니다.

<?php
require("../../class/connect.php");
require("../../class/db_sql.php");
require("../../data/dbcache/class.php");
require("../../class/ShopSysFun.php");
$link=db_connect();
$empire=new mysqlquery();</p> <p>//$_POST
$classid=(int)$_POST[&#39;classid&#39;];
$id=(int)$_POST[&#39;id&#39;];</p> <p>//add function
function json_AddBuycar($classid,$id){
global $class_r,$empire,$dbtbpre,$public_r;
$classid=(int)$classid;
$id=(int)$id;
if(empty($classid)||empty($id)||empty($class_r[$classid][tbname]))
{
return json_encode(array(&#39;msgid&#39;=>1,&#39;msg&#39;=>&#39;此商品不存在&#39;));
}
//验证产品是否存在
$num=$empire->gettotal("select count(*) as total from {$dbtbpre}ecms_".$class_r[$classid][tbname]." where 
classid=&#39;$classid&#39; and id=&#39;$id&#39; limit 1");
if(!$num)
{
return json_encode(array(&#39;msgid&#39;=>1,&#39;msg&#39;=>&#39;此商品不存在&#39;));
}
$record="!";
$field="|";
$productid=$classid.",".$id;
$buycar=getcvar(&#39;mybuycar&#39;);
//重复
if(strstr($buycar,"|".$productid."|"))
{
$pr=explode("|".$productid."|",$buycar);
$pr1=explode("!",$pr[1]);
$oldbuycar="|".$productid."|".$pr1[0]."!";
//数量
$pr1[0]=ReturnBuycarProductNum($pr1[0]);
if(empty($pr1[0]))
{
$pr1[0]=1;
}
$newnum=$pr1[0]+1;
$newbuycar="|".$productid."|".$newnum."!";
$buycar=str_replace($oldbuycar,$newbuycar,$buycar);
}
else
{
//只存放一个
if($public_r[&#39;buycarnum&#39;]==1)
{
$buycar=&#39;&#39;;
}
$buycar.="|".$productid."|1!";
}
$re=SetBuycar($buycar);
if($re)
{
return json_encode(array(&#39;msgid&#39;=>2,&#39;msg&#39;=>&#39;商品加入购物车成功&#39;));
}
}
echo json_AddBuycar($classid,$id);
db_close();
$empire=null;
?>

이 시점에서 문제는 해결되었습니다!

위 내용은 Imperial ECMS를 사용하여 한 번에 새로 고치지 않고 장바구니에 추가하는 AJAX를 구현하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 www.word666.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제