Heim  >  Artikel  >  Backend-Entwicklung  >  Lernen Sie, in zwei Stunden mit PHP einen Website-Warenkorb zu erstellen

Lernen Sie, in zwei Stunden mit PHP einen Website-Warenkorb zu erstellen

烟雨青岚
烟雨青岚nach vorne
2020-07-14 13:26:502347Durchsuche

Lernen Sie, in zwei Stunden mit PHP einen Website-Warenkorb zu erstellen

Online-Shopping ist mittlerweile in Mode gekommen. Kunden wählen einen Artikel aus, legen ihn in den Warenkorb und kehren dann zurück, um mit dem Einkauf fortzufahren, oder gehen zur Kasse. Heute wird capucivar PHP verwenden, um diese Warenkorbfunktion zu implementieren.

Erstellen Sie zunächst eine einfache Homepage, fragen Sie mehrere Produkte aus der Datenbank ab, zeigen Sie sie auf der Homepage an und fügen Sie eine Kaufschaltfläche hinzu . Der spezifische Code lautet wie folgt:

<?php
include ("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"><img
src="images/<?php echo$row["pimg"]?>" width="123" height="121" border="0"/></td>
   <td width="203"height="35">货物名称:<?php echo$row["pname"]?></td>
  </tr>
  <tr>
   <tdheight="28">货物价格:<?php echo$row["price"]?></td>
  </tr>
  <tr>
   <td height="27"align="center"><ahref="buy.php?id=<?php echo $row["pid"]?>&pname=<?php
echo $row["pname"]?>">购买</a></td>
 </tr> </table>
<?php
}
?>

Übrigens habe ich vergessen, conn.php zu schreiben, er wird zum Herstellen einer Verbindung zur Datenbank verwendet:

<?php
 $conn=mysql_connect("localhost","root","");
 mysql_select_db("shop",$conn);
 mysql_query("set names gb2312");
?>

Klicken Sie auf den Hyperlink, um zu kaufen. Gehen Sie dann zu buy.php. Auf dieser Seite müssen Sie die gekauften Artikel speichern. Wir können die gekauften Artikel in ein eindimensionales Array und dann in das eindimensionale Array von suoyou einfügen ein zweidimensionales Array und fügen Sie schließlich das zweidimensionale Array in die Sitzung ein.

Egal, wie Sie die gekauften Artikel in Zukunft ändern, Sie können sie aus der Sitzung nehmen und ändern. Dies macht die Verwaltung sehr komfortabel. Der spezifische Code lautet wie folgt:

<?php
session_start();//使用session之前一定要将session开启
ob_start();//要清空缓存就必须ob_start()
$pid=$_GET["id"];//得到购买物品的id
$name=$_GET["pname"];//得到购买物品的名字
$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,"name"=>$name,"num"=>1);
     }
}
else
{
 
$arr[$pid]=array("pid"=>$pid,"name"=>$name,"num"=>1);
}
$_SESSION["mycar"]=$arr;//购买完后,将此数组重新放入session中,便可以在各个页面看到此session
ob_clean();//清空缓存
header("location:car.php");//跳转到购物车界面(car.php)
?>

Das Folgende ist der Code des Warenkorbs:

<?php
session_start();//启用session
$arr=$_SESSION["mycar"];//从session中拿出二维数组
?>
//下面将数组里的数据即客户所购买的物品展示出来
<table width="600" height="37"border="1">
  <tr>
   <tdwidth="96">商品ID</td>
   <tdwidth="158">商品名称</td>
   <tdwidth="154">商品数量</td>
   <tdwidth="177">删除</td>
  </tr>
<?php
foreach($arr as $a)//遍历这个二维数组
{
?>
     <tr>
     <td width="96"><?phpecho $a["pid"]?></td>//物品的id
   <td width="158"><?phpecho $a["name"]?></td>//物品的名称
   <td width="154"><?phpecho $a["num"]?></td>//物品的数量
   <td width="177"><ahref="delete.php?id=<?php echo $a[pid]?>">删除</a></td>//点击删除超链接到”delete.php”,将物品的id传过去
</tr>
<?php
}
?>
</table>
</form>
<ahref="index.php">返回继续购物</a>//返回到首页

Wenn Sie ein Produkt löschen, rufen Sie zunächst die ID des Produkts ab Nachdem Sie die ID erhalten haben, entfernen Sie das eindimensionale Array, das der erhaltenen ID im zweidimensionalen Array entspricht, löschen Sie das eindimensionale Array (unset()) und setzen Sie das zweidimensionale Array dann wieder in die Sitzung ein (). Geben Sie unten den Löschcode ein:

<?php
session_start();//启动session
ob_start();//清空缓存必须启动的项
$pid=$_GET["id"];//得到通过get方式传过来的id
$arr=$_SESSION["mycar"];//拿出session里的二维数组
foreach($arr as$key=>$proId)//遍历该二维数组中的键值,这里也就是商品的id
{
     if($key==$pid)//判断键值等于传过来的商品id
     {
          unset($arr[$key]);//清除该一维数组
     }
}
$_SESSION["mycar"]=$arr;//将清除之后的二维数组重新放到session里
ob_clean();//清除缓存
header("location:car.php");//跳转到购物车
?>

Nachdem Sie den Code geschrieben haben, löschen Sie das Produkt mit der ID 2, das auf capucivar gekauft wurde

Die Warenkorbfunktion ist relativ einfach, Es werden lediglich Kauf und Löschung implementiert. Tatsächlich ist der Warenkorb relativ einfach. Solange die Idee klar ist, ist er so einfach wie die Berechnung von 1+1.

Die Funktion des Warenkorbs ist wie folgt implementiert: Kaufen Sie ein Produkt, um die ID und den Namen des Produkts zu erhalten, addieren Sie diese beiden Werte plus eine Menge (1) und setzen Sie sie in eine Eins -dimensionales Array. Ein Produkt ist ein eindimensionales Array, daher erfordern viele Elemente natürlich ein zweidimensionales Array.

Überprüfen Sie vorher, ob das Produkt bereits gekauft wurde. Wenn ja, fügen Sie eins zur vorherigen Menge hinzu. Andernfalls erstellen Sie ein eindimensionales Array neu und fügen Sie das eindimensionale Array in ein zweidimensionales Array ein. Dimensionsarray und schließlich in die Sitzung.

Besorgen Sie sich beim Löschen die ID des zu löschenden Produkts, suchen Sie dann das eindimensionale Array, in dem das Produkt gespeichert ist, aus dem zweidimensionalen Array, löschen Sie das eindimensionale Array und fügen Sie dann das zweidimensionale Array ein. dimensionales Array in die Sitzung ein. Auf diese Weise wird eine einfache Warenkorbfunktion ähnlich der oben beschriebenen implementiert.

Vielen Dank an alle fürs Lesen, ich hoffe, dass Sie viel davon profitieren werden.

Dieser Artikel ist reproduziert von: https://blog.csdn.net/qq1355541448/article/details/26371777

Empfohlenes Tutorial: „PHP-Tutorial

Das obige ist der detaillierte Inhalt vonLernen Sie, in zwei Stunden mit PHP einen Website-Warenkorb zu erstellen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:csdn.net. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen