>백엔드 개발 >PHP 튜토리얼 >PHP에서 장바구니에 제품을 추가하는 그래픽 코드에 대한 자세한 설명

PHP에서 장바구니에 제품을 추가하는 그래픽 코드에 대한 자세한 설명

黄舟
黄舟원래의
2017-03-17 09:40:542130검색

이 글은 주로 PHP에서 장바구니에 상품을 담는 기능을 자세하게 소개하고 있습니다. 관심 있는 친구들이 참고하면 좋을 것 같아요.

오늘은 장바구니를 연습하고 주문을 제출하는 중입니다. 쓰다보니 좀 어지러워서 정리를 해보겠습니다. 이 장바구니는 비교적 간단하게 단기 보관용으로 사용되며 데이터베이스에 저장되지 않습니다. 쇼핑 장바구니에 들어가기 전에 먼저 데이터베이스에서 테이블을 불러와야 합니다. 여기서는 로그인 테이블을 사용하여 조정합니다. 사용자 이름과 비밀번호가 모두 준비된 후 장바구니에 담는 것을 고려해야 하는 세 가지 상황이 있습니다:

첫 번째 상황: 장바구니에 아무것도 없습니다

두 번째 경우: 이미 장바구니에 담긴 상품입니다. 다시 추가할 때 수량을 +1로 간주해야 합니다.

세 번째 경우: 있음 장바구니에 상품이 있는데, 해당 상품이 없습니다

다음 사진은 사용된 데이터베이스 테이블입니다.

PHP에서 장바구니에 제품을 추가하는 그래픽 코드에 대한 자세한 설명PHP에서 장바구니에 제품을 추가하는 그래픽 코드에 대한 자세한 설명

다음 사진은 로그인 페이지 코드:


<body>
<form action="chuli.php" method="post">
 <p style="margin-left: 500px; margin-top: 200px;
  height: 250px; width: 250px; border: 1px dashed black">
  <p style="margin-left: 100px; "><h3>登录</h3></p>
  <p style="margin-top: 20px">用户名:<input type="text" name="uid"/></p><br/>
  <p>密 码:<input type="password" name="pwd"/></p><br/>
  <p style="margin-left: 180px"><input type="submit" value="登录"/></p>
 </p>

</form>
</body>

로그인 페이지가 작성된 후 처리 페이지에 들어가 데이터베이스에서 사용자 이름과 비밀번호를 검색해야 합니다.


<?php
session_start(); //开启session 必须要写到第一行
header("Content-type:text/html;charset=utf-8");

$uid=$_POST["uid"]; //从登录页面获取到用户名和密码
$pwd=$_POST["pwd"];

include("DADB.class.php");
$db=new DADB();

$sql="select password from login where username=&#39;{$uid}&#39;";
$arr=$db->Query($sql);

if($arr[0][0]==$pwd && !empty($pwd)) //判断所填写的密码和取到的密码是一样的,而且密码不能为空
{
 $_SESSION["uid"]=$uid;
 header("location:main.php");
}
else
{
 echo"登录失败";
}

로그인 페이지는 그림과 같습니다.

PHP에서 장바구니에 제품을 추가하는 그래픽 코드에 대한 자세한 설명

이제 메인 페이지로 들어가보겠습니다. 데이터베이스의 모든 과일 정보를 장바구니에 추가합니다.


<h2>大苹果购物网</h2>
<?php
session_start();
include("DADB.class.php");
$db=new DADB();
?>
<table border="1" width="100%" cellpadding="0" cellspacing="0">
 <tr>
  <td>代号</td>
  <td>水果名称</td>
  <td>水果价格</td>
  <td>原产地</td>
  <td>货架</td>
  <td>库存量</td>
  <td></td>
 </tr>
 <?php

 $uid=$_SESSION["uid"];

 $sql="select * from fruit";
 $arr=$db->Query($sql);
 foreach($arr as $v)
 {
  echo"<tr>
  <td>{$v[0]}</td> // 从数据库调出我们所需要的内容
  <td>{$v[1]}</td>
  <td>{$v[2]}</td>
  <td>{$v[3]}</td>
  <td>{$v[4]}</td>
  <td>{$v[5]}</td>
  <td><a href=&#39;add.php?ids={$v[0]}&#39;>购买</a></td> //这里的购买相当于添加购物车的功能 
 </tr>";
 }
 ?>

 <?php
 //这里显示的是 购物车有多少产品,和产品的总价格
 $ann=array();
 if(!empty($_SESSION["gwc"]))
 {
  $ann=$_SESSION["gwc"];
 }
 $zhonglei = count($ann); 

 $sum=0;
 foreach($ann as $k)
 {
  $sql1="select price from fruit where ids=&#39;{$v[0]}&#39;";

  $danjia=$db->Query($sql1);

  foreach($danjia as $n)
  {
   $sum=$sum + $n[0]*$k[1];
  }


 }
 echo"购物车有<mark>{$zhonglei}</mark>种商品,总价格为<mark>{$sum}</mark>元";
 ?>
</table>
<p>
<a href="gouwuche.php" rel="external nofollow" rel="external nofollow" >查看购物车</a>
<a href="main.php" rel="external nofollow" rel="external nofollow" >浏览商品</a>
<a href="zhanghu.php" rel="external nofollow" rel="external nofollow" >查看账户</a> </p>

</body>

메인 페이지는 사진과 같습니다.

PHP에서 장바구니에 제품을 추가하는 그래픽 코드에 대한 자세한 설명

가장 중요한 것은 장바구니 추가입니다. page

<?php
session_start();

$ids = $_GET["ids"];


if(empty($_SESSION["gwc"]))
{
 //1.购物车是空的,第一次点击添加购物车
 $arr = array(
  array($ids,1)
 );
 $_SESSION["gwc"]=$arr;
}
else
{
 //不是第一次点击
 //判断购物车中是否存在该商品
 $arr = $_SESSION["gwc"]; //先存一下

 $chuxian = false;
 foreach($arr as $v)
 {
  if($v[0]==$ids)
  {
   $chuxian = true;
  }
 }

 if($chuxian)
 {
  //3.如果购物车中有该商品

  for($i=0;$i<count($arr);$i++)
  {
   if($arr[$i][0]==$ids)
   {
    $arr[$i][1]+=1;
   }
  }

  $_SESSION["gwc"] = $arr;
 }
 else
 {
  //2.如果购物车中没有该商品
  $asg = array($ids,1);
  $arr[] = $asg;
  $_SESSION["gwc"] = $arr;
 }

}
header("location:gouwuche.php");

이런 식으로 장바구니 페이지를 표시할 수 있습니다. 장바구니 페이지 코드는

<h2>购物车中有以下商品:</h2>
<table cellpadding="0" cellspacing="0" border="1" width="100%">
 <tr>
  <td>商品名称</td>
  <td>商品单价</td>
  <td>购买数量</td>
  <td></td>
 </tr>
 <?php
 session_start();
 //$uid=$_SESSION["uid"];

 $arr=array();

 if(!empty($_SESSION["gwc"]))
 {
  $arr=$_SESSION["gwc"];
 }
 include("DADB.class.php");
 $db=new DADB();

 foreach($arr as $v)
 {
  global $db;
  $sql="select * from fruit where ids=&#39;{$v[0]}&#39;";
  $att=$db -> Query($sql,1);
  foreach($att as $n)
  {
   echo"<tr>
  <td>{$n[1]}</td>
  <td>{$n[2]}</td>
  <td>{$v[1]}</td>
  <td><a href=&#39;shanchu.php?ids={$v[0]}&#39;>删除</a></td>
 </tr>";}

 }
 ?>

</table>
<p>
<a href="gouwuche.php" rel="external nofollow" rel="external nofollow" >查看购物车</a> 
<a href="main.php" rel="external nofollow" rel="external nofollow" >浏览商品</a> 
<a href="zhanghu.php" rel="external nofollow" rel="external nofollow" >查看账户</a> </p> 14 15 </body>

이런 방법으로 장바구니 페이지에 들어가서 그림과 같이 표시됩니다. 그림에서:

PHP에서 장바구니에 제품을 추가하는 그래픽 코드에 대한 자세한 설명

이것은 장바구니에 추가하는 비교적 간단한 과정이지만, 그 과정에서 아직 완성되지 않은 링크가 많이 있습니다. , 장바구니에 추가한 후 데이터베이스의 상품 수가 줄어들었고 장바구니에 있는 상품을 삭제하는 등의 작업은 아직 수행되지 않았습니다.

위 내용은 PHP에서 장바구니에 제품을 추가하는 그래픽 코드에 대한 자세한 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.