帝国ECMS怎么实现AJAX无刷新加入购物车
帝国ECMS怎么实现AJAX无刷新加入购物车
帝国ECMS实现AJAX无刷新加入购物车的方法主要步骤如下:
一、修改商城内容模板,头部加入如下代码:
<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='<?=$public_r[newsurl]?>'; </script>
二、修改商城内容模板,加入购物车部分修改成如下代码:
<a href="#ecms" onclick="AddProduct([!--classid--],[!--id--]);">加入购物车</a>
三、至于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); } }) }
四、加入处理程序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['classid']; $id=(int)$_POST['id']; </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('msgid'=>1, 'msg'=>'此商品不存在')); } //验证产品是否存在 $num=$empire->gettotal("select count(*) as total from {$dbtbpre}ecms_".$class_r[$classid][tbname]." where classid='$classid' and id='$id' limit 1"); if(!$num) { return json_encode(array('msgid'=>1, 'msg'=>'此商品不存在')); } $record="!"; $field="|"; $productid=$classid.",".$id; $buycar=getcvar('mybuycar'); //重复 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['buycarnum']==1) { $buycar=''; } $buycar.="|".$productid."|1!"; } $re=SetBuycar($buycar); if($re) { return json_encode(array('msgid'=>2, 'msg'=>'商品加入购物车成功')); } } echo json_AddBuycar($classid, $id); db_close(); $empire=null; ?>
至此,就完成了帝国ECMS AJAX无刷新加入购物车的功能了。
推荐教程:帝国CMS教程
Atas ialah kandungan terperinci 帝国ECMS怎么实现AJAX无刷新加入购物车. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas



Peta laman Empire CMS boleh didapati dengan mengakses fail config.inc.php dan menyemak tetapan peta laman web. Jika ditetapkan kepada "hidup", peta laman didayakan. Laluan peta laman terletak dalam tetapan sitemapurl dan boleh diakses melalui pelayar atau dimuat turun melalui FTP.

Tetapan mudah alih Empire CMS terletak dalam "Templat Mudah Alih" modul "Pengurusan Templat" Langkah khusus termasuk: mendayakan templat, memilih saluran aplikasi, mengedit kandungan templat dan menyimpan tetapan.

Bina enjin cadangan autolengkap menggunakan PHP dan Ajax: Skrip sisi pelayan: mengendalikan permintaan Ajax dan mengembalikan cadangan (autocomplete.php). Skrip pelanggan: Hantar permintaan Ajax dan cadangan paparan (autocomplete.js). Kes praktikal: Sertakan skrip dalam halaman HTML dan nyatakan pengecam elemen input carian.

Lokasi yang sesuai untuk fail templat Empire CMS ialah /e/template/default/skin/default/ Kedua, ia juga boleh diletakkan dalam /e/data/skins/ dan /e/skin/ mengekalkan struktur folder dan menetapkan kebenaran fail dan sandaran biasa.

Ajax (JavaScript Asynchronous dan XML) membenarkan menambah kandungan dinamik tanpa memuatkan semula halaman. Menggunakan PHP dan Ajax, anda boleh memuatkan senarai produk secara dinamik: HTML mencipta halaman dengan elemen kontena dan permintaan Ajax menambah data pada elemen selepas memuatkannya. JavaScript menggunakan Ajax untuk menghantar permintaan kepada pelayan melalui XMLHttpRequest untuk mendapatkan data produk dalam format JSON daripada pelayan. PHP menggunakan MySQL untuk menanyakan data produk daripada pangkalan data dan mengekodnya ke dalam format JSON. JavaScript menghuraikan data JSON dan memaparkannya dalam bekas halaman. Mengklik butang mencetuskan permintaan Ajax untuk memuatkan senarai produk.

Antara muka penerbitan automatik Empire CMS terletak di /e/api/web/postinfo.php Langkah-langkah penggunaan adalah seperti berikut: lawati /e/api/web/postinfo.php alamat dan gunakan HTTP POST untuk menyerahkan tajuk artikel, ID lajur, ID kategori, pengarang dan artikel Kandungan dan antara muka data lain akan mengembalikan respons dalam format JSON, yang mengandungi hasil penerbitan dan ID artikel.

Lokasi muat turun templat Empire CMS: Muat turun templat rasmi: https://www.phome.net/template/ Tapak web templat pihak ketiga: https://www.dedecms.com/diy/https://www.0978.com. cn /https://www.jiaocheng.com/Kaedah pemasangan: Muat turun templat Nyahzip templat Muat naik templat Pilih templat

Untuk meningkatkan keselamatan Ajax, terdapat beberapa kaedah: Perlindungan CSRF: menjana token dan menghantarnya kepada pelanggan, menambahnya ke bahagian pelayan dalam permintaan untuk pengesahan. Perlindungan XSS: Gunakan htmlspecialchars() untuk menapis input bagi mengelakkan suntikan skrip berniat jahat. Pengepala Kandungan-Keselamatan-Dasar: Hadkan pemuatan sumber berniat jahat dan nyatakan sumber dari mana skrip dan helaian gaya dibenarkan untuk dimuatkan. Sahkan input sisi pelayan: Sahkan input yang diterima daripada permintaan Ajax untuk menghalang penyerang daripada mengeksploitasi kelemahan input. Gunakan perpustakaan Ajax yang selamat: Manfaatkan modul perlindungan CSRF automatik yang disediakan oleh perpustakaan seperti jQuery.
