PHP Cookie + ショッピング カートを作成するにはどうすればよいですか? ?
これで、ウェブサイトを作成してショッピングカートに到達したら、それ以上は書きません! !参考に専門家が書いたコードを教えてください。 !ありがとうございます
ディスカッションへの返信 (解決策)
ajax+ データベース ストレージのコンテンツで、Cookie を配置できず、ショッピング カート内のアイテムが消えてしまった場合はどうすればよいですか?ショッピング カートの情報については、2 階に記載されている AJax+ データベースはどのように実装されていますか? ソース コードをお持ちの場合は、共有してください。ありがとうございます。
<?php$act=$_GET[act];$product_id=$_GET[prcid];if($act=="add"){ $cars_id=explode(",",$_COOKIE[buypro]); //echo "<pre class="brush:php;toolbar:false">"; //print_r($cars_id); //echo""; //exit; foreach($cars_id as $pr_id) { if($pr_id==$product_id) { echo "<script>alert('您已经购买了此商品,请查看购物车!');location.href='car.php';</script>"; exit; } } if(empty($_COOKIE[buypro])) { setcookie("buypro",$product_id,time()+3600); setcookie("buycount","1",time()+3600); } else { $newpro=$_COOKIE[buypro].",".$product_id; $newcount=$_COOKIE[buycount].","."1"; setcookie("buypro",$newpro,time()+3600); setcookie("buycount",$newcount,time()+3600); }}//删除if($act=="del"){$buy=$_COOKIE[buypro];$cars_id=explode(",",$buy);$buycountary=explode(",",$_COOKIE[buycount]);$newid=array();$carcount=array();for($i=0;$i
学習中
十分ではない連絡先の完全なセットを共有します
//index.php<?phpinclude ("conn.php");$sql="select * from produce";//查询所有商品$rs=mysql_query($sql,$conn);//执行sql语句,得到一个结果集while($row=mysql_fetch_array($rs))//遍历结果集{?><table width="343" height="152" border="1" style="float:left"> <tr> <td width="124" rowspan="3"><imgsrc="images/<?php echo $row["pimg"]?>" width="123" height="121" border="0" /></td> <td width="203" height="35">货物名称:<?php echo $row["pname"] ?></td> </tr> <tr> <td height="28">货物价格:<?php echo $row["price"] ?></td> </tr> <tr> <td height="27" align="center"><a href="buy.php?id=<?php echo $row["pid"] ?>&pname=<?phpecho $row["pname"] ?>">购买</a></td> </tr> </table><?php}?>//conn.php<?php $conn=mysql_connect("localhost","root","root"); mysql_select_db("shop",$conn); mysql_query("set names utf8");?>//car.php<?php include_once('public.inc.php'); $arr=$_SESSION["mycar"];//从session中拿出二维数组 ?> <table width="600" height="37" border="1"> <tr> <td width="96">商品ID</td> <td width="154">商品数量</td> <td width="154">商品单价</td> <td width="154">商品总价</td> <td width="177">删除</td> </tr> <?php foreach($arr as $a)//遍历这个二维数组 { $tp=$a["num"]*$a["price"]; $_tp += $tp; $num += $a["num"]; ?> <tr> <td width="96"><?php echo $a["pid"] ?></td> <td width="154"><?php echo $a["num"] ?></td> <td width="154"><?php echo $a["price"] ?></td> <td width="154"><?php echo $tp ?></td> <td width="177"><a href="delete.php?id=<?php echo $a[pid] ?>">删除</a></td> </tr> <?php } ?> <tr> <td width="96"> </td> <td width="154"><?=$num?></td> <td width="154">总价</td> <td width="154"><?php echo $_tp ?></td> <td width="177">s</td> </tr> </table> </form> <a href="order.php">提交订单</a>//返回到首页//buy.php<?php include_once('public.inc.php'); ob_start();//要清空缓存就必须ob_start() $sql="select * from qf_act where id = $_GET[id]"; $rs=mysql_query($sql); $row=mysql_fetch_array($rs); $price=$row["price"]; $pid=$_GET["id"];//得到购买物品的id $arr=$_SESSION["mycar"];//将session中的变量取出来 //下面先判断这个变量是否是数组,可以得到以前是否买过东西 if(is_array($arr)) { //如果是数组,说明以前买过东西 //如果买过东西又分两种情况: if(array_key_exists($pid,$arr)) { // 1、array_key_exists($pid,$arr)判断$arr中是否存在键值为$pid的一个一维数组,如果存在的话,就说明此商品以前购买过,只需要把数量加1 $uu=$arr[$pid]; //从二维数组里拿出对应的一维数组,该一维数组包括id name num 三个值 $uu["num"]=$uu["num"]+1; //改变数量,将数量加1 $arr[$pid]=$uu; //改完后再将此一维数组放回二维数组中 } else { //2.此商品第一次购买,就将得到的id和name值组成一个一维数组 $arr[$pid]=array("pid"=>$pid,"price"=>$price,"num"=>1); } } else { $arr[$pid]=array("pid"=>$pid,"price"=>$price,"num"=>1); } $_SESSION["mycar"]=$arr; //购买完后,将此数组重新放入session中,便可以在各个页面看到此session ob_clean();//清空缓存 header("location:car.php");//跳转到购物车界面(car.php)?>
あまり強力ではないかもしれませんが、基本的な機能には問題ありません。独自の要件に応じて変更できます
thinkPHP ショッピング カート コードの書き方
ログインしていないユーザーのショッピング カートのアイテムは Cookie に保存され、ログインしているユーザーはデータベースに保存されます
<?php$method=@$_POST['method'];$good_id=@$_POST['id'];$good_name=@$_POST['name'];$good_item=@$_POST['item_code'];$good_num=@$_POST['number'];$good_car_array=unserialize($_COOKIE['good_car_string']);switch($method){ case "add": if(array_key_exists($good_id,$good_car_array)) { echo "购物车中已经存在该商品!"; } else { $good_car_array[$good_id]=array($good_item,$good_name,$good_num); echo "添加成功"; } break; case "change": $good_car_array[$good_id][2]=$good_num; break; case "del": unset($good_car_array[$good_id]); break; case "delall": $good_car_array=""; break;}setcookie('good_car_string',serialize($good_car_array),time()+3600*30*24);print_r($good_car_array);?>

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック











多くの場合、キーワードと追跡パラメーターで散らかった長いURLは、訪問者を阻止できます。 URL短縮スクリプトはソリューションを提供し、ソーシャルメディアやその他のプラットフォームに最適な簡潔なリンクを作成します。 これらのスクリプトは、個々のWebサイトにとって価値があります

2012年のFacebookによる有名な買収に続いて、Instagramはサードパーティの使用のために2セットのAPIを採用しました。これらはInstagramグラフAPIとInstagram Basic Display APIです。

Laravelは、直感的なフラッシュメソッドを使用して、一時的なセッションデータの処理を簡素化します。これは、アプリケーション内に簡単なメッセージ、アラート、または通知を表示するのに最適です。 データは、デフォルトで次の要求のためにのみ持続します。 $リクエスト -

これは、LaravelバックエンドとのReactアプリケーションの構築に関するシリーズの2番目と最終部分です。シリーズの最初の部分では、基本的な製品上場アプリケーションのためにLaravelを使用してRESTFUL APIを作成しました。このチュートリアルでは、開発者になります

Laravelは簡潔なHTTP応答シミュレーション構文を提供し、HTTP相互作用テストを簡素化します。このアプローチは、テストシミュレーションをより直感的にしながら、コード冗長性を大幅に削減します。 基本的な実装は、さまざまな応答タイプのショートカットを提供します。 Illuminate \ support \ facades \ httpを使用します。 http :: fake([[ 'google.com' => 'hello world'、 'github.com' => ['foo' => 'bar']、 'forge.laravel.com' =>

PHPクライアントURL(CURL)拡張機能は、開発者にとって強力なツールであり、リモートサーバーやREST APIとのシームレスな対話を可能にします。尊敬されるマルチプロトコルファイル転送ライブラリであるLibcurlを活用することにより、PHP Curlは効率的なexecuを促進します

顧客の最も差し迫った問題にリアルタイムでインスタントソリューションを提供したいですか? ライブチャットを使用すると、顧客とのリアルタイムな会話を行い、すぐに問題を解決できます。それはあなたがあなたのカスタムにより速いサービスを提供することを可能にします

2025 PHP Landscape Surveyは、現在のPHP開発動向を調査しています。 開発者や企業に洞察を提供することを目的とした、フレームワークの使用、展開方法、および課題を調査します。 この調査では、現代のPHP Versioの成長が予想されています
