如何使用php實(shí)現(xiàn)購(gòu)物車(chē)產(chǎn)品刪除功能?相信很多沒(méi)有經(jīng)驗(yàn)的人對(duì)此束手無(wú)策,為此本文總結(jié)了問(wèn)題出現(xiàn)的原因和解決方法,通過(guò)這篇文章希望你能解決這個(gè)問(wèn)題。
成都創(chuàng)新互聯(lián)公司主營(yíng)云浮網(wǎng)站建設(shè)的網(wǎng)絡(luò)公司,主營(yíng)網(wǎng)站建設(shè)方案,重慶APP開(kāi)發(fā)公司,云浮h5重慶小程序開(kāi)發(fā)搭建,云浮網(wǎng)站營(yíng)銷推廣歡迎云浮等地區(qū)企業(yè)咨詢
上一篇的時(shí)候只是寫(xiě)了簡(jiǎn)單的加入購(gòu)物車(chē)功能,購(gòu)物車(chē)中產(chǎn)品的刪除、提交訂單后,庫(kù)存的減少 以及客戶賬戶的余額都沒(méi)有完善,這一篇是接著完善上一篇的,上一篇寫(xiě)到了購(gòu)物車(chē)中刪除的功能了,為了使刪除的代碼少敲一些,我們要把前面
鏈接刪除頁(yè)面的時(shí)候 獲取ids的值改為獲取 arr的索引值arr的索引值k 改為
刪除
這樣我們進(jìn)入刪除頁(yè)面后 就可以直接獲取索引值sy 這樣刪除頁(yè)面寫(xiě)起來(lái)就簡(jiǎn)單多了
下面就是刪除頁(yè)面的代碼了 shanchu.php
1) { $arr[$sy][1] = $arr[$sy][1]-1; } else //如果數(shù)量為1,移除 { unset($arr[$sy]); } $_SESSION["gwc"] = $arr; //最后存一下購(gòu)物車(chē)的內(nèi)容 header("location:gouwuche.php");
這樣刪除頁(yè)面就可以了,下面就是提交頁(yè)面的代碼了,相對(duì)來(lái)說(shuō)比較繁瑣,說(shuō)到提交頁(yè)面,我們會(huì)想到的是 庫(kù)存、余額,我們只要提交訂單,那么庫(kù)存就會(huì)減少,相對(duì)的 余額也會(huì) 減少,當(dāng)然如果庫(kù)存不足,或者余額不足的話,也要給購(gòu)買(mǎi)者提示。
在這個(gè)地方做了兩個(gè)表格 用來(lái)存儲(chǔ)數(shù)據(jù)的
在gouwuche.php最后的時(shí)候加一個(gè)標(biāo)簽
下面就是tijiaodingdd.php的代碼了
Query($ysql); $yarr[0][0];//總額 //購(gòu)物車(chē)的總價(jià)格,前面有寫(xiě)過(guò) $arr=array(); if (!empty($_SESSION["gwc"])) { $arr=$_SESSION["gwc"]; } $sum=0; foreach($arr as $v) { $v[1];//購(gòu)物車(chē)中產(chǎn)品的數(shù)量 $psql="select price from fruit WHERE ids='{$v[0]}'"; $parr=$db->Query($psql); foreach($parr as $k) { $k[0];//產(chǎn)品的單價(jià) $sum+=$k[0]*$v[1]; } } //判斷余額是否滿足購(gòu)買(mǎi) if($yarr[0][0]>=$sum) {//余額滿足,要判斷庫(kù)存 foreach($arr as $v) { $ksql="select number from fruit where ids='{$v[0]}'"; $karr=$db->Query($ksql); $karr[0][0];//這是庫(kù)存 if($karr[0][0]<$v[1]) //表示庫(kù)存不足,這時(shí)要給顧客提示庫(kù)存不足 { echo"庫(kù)存不足"; exit; } } //判斷之后需要提交訂單了 //賬戶扣除余額 $kcsql="update login set account=account-{$sum} where username='{$uid}'"; $db->Query($kcsql,0);//這里是修改語(yǔ)句,所以要加上0 //扣除庫(kù)存 foreach($arr as $v) { $kcksql="update fruit set number=number-$v[1] where ids='{$v[0]}'"; $db->Query($kcksql,0); } //所有的工作都做完了,這時(shí)我們就該提交訂單了 // 這里我在數(shù)據(jù)庫(kù)中做了兩張表,把提交的訂單添加到表中就可以保存了 //添加訂單 $ddh = date("YmdHis"); $time = date("Y-m-d H:i:s"); $sdd = "insert into orders values('{$ddh}','{$uid}','{$time}')"; $db->Query($sdd,0); //添加訂單詳情 foreach($arr as $v) { $sddxq = "insert into orderdetails values('','{$ddh}','{$v[0]}','{$v[1]}')"; $db->Query($sddxq,0); } } else { echo "余額不足"; exit; } ?>
購(gòu)物車(chē)還是和上一篇購(gòu)物車(chē)中的產(chǎn)品是一樣的,這時(shí)我們?cè)偃タ纯磾?shù)據(jù)庫(kù)中的表。
備注:因?yàn)橹坝羞^(guò)多次測(cè)試用的都是zhangsan的賬號(hào), 所以login表中的account價(jià)格發(fā)生了變化,變?yōu)?3.6元,我們放入購(gòu)物車(chē)的產(chǎn)品價(jià)格是16.8元,所以這里是沒(méi)有問(wèn)題的。
這樣一個(gè)比較簡(jiǎn)單的購(gòu)物車(chē)就算徹底的完成了。
看完上述內(nèi)容,你們掌握如何使用php實(shí)現(xiàn)購(gòu)物車(chē)產(chǎn)品刪除功能的方法了嗎?如果還想學(xué)到更多技能或想了解更多相關(guān)內(nèi)容,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝各位的閱讀!