php和mysql数据库制作简单的商城购物车

今天整理了一下利用php和mysql数据库实现简单的购物车功能,主要用到的mysql表有以下几个:

login:

orders:

orderdetails:

fruit:

要制作商城,首先需要一个登陆页面:

代码如下:

点击“登录”按钮,跳转到登录页面的处理页面dengluchuli.php处理登录页面的信息:

session_start();//开启session 必须要写到第一行

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

$pwd=$_POST["pwd"];

//连接数据库

$db=newMySQLi("localhost","root","","z_gwc");

!mysqli_connect_error()ordie("连接错误");

$db->query("set names utf8");

//查询密码

$sql="select password from login where username='{$uid}'";

$result=$db->Query($sql);

$arr=$result->fetch_all();

if($arr[][]==$pwd && !empty($pwd))//判断所填写的密码和取到的密码是一样的,而且密码不能为空

{

//定义用户uid为超全局变量

$_SESSION["uid"]=$uid;

//跳转页面

header("location:index1.php");

}

else

{

echo"登录失败";

}

登录成功后,登录到商品界面,商品界面代码:

session_start();//开始

//连接数据库

$db=newMySQLi("localhost","root","","z_gwc");

!mysqli_connect_error()ordie("连接失败");

$db->query("set names utf8");

//获取传值

$ids=$_GET["ids"];

$uid=$_SESSION["uid"];//用户账号

//查询商品表

$sql="select * from fruit";

$res=$db->query($sql);

$attr=$res->fetch_all();

$sql="select Code from orders where UserName ='$uid'";

$res=$db->query($sql);

$dhattr=$res->fetch_all();//单号数组

$dhStr="";

//数组遍历,转为字符串

foreach($dhattras$v){

$dhStr=$dhStr.$v[]."','";

}

$dhStr=substr($dhStr,,-3);//截取字符串

$sql="select FruitCode,count(Count) from orderDetails where OrderCode in('$dhStr') group by FruitCode";

$res=$db->query($sql);

$spattr=$res->fetch_all();//购物车水果信息数组

$strPice=;

foreach($attras$v){

foreach($spattras$v1){

if($v[]==$v1[]){

$strPice=$strPice+$v[2]*$v1[1];

}

}

}

?>

无标题文档

登录

大苹果购物网

浏览商品

查看账户

&ids=">查看购物车

购物车中有种商品,总价格:元。

代号

水果名称

水果价格

原产地

货架

库存量

操作

foreach($attras$k=>$v){?>

"method="post">

value="">

购买

?>

商品页面展示:

点击“购买”,跳到add.php处理界面,将购买信息填入“购物车”,:

session_start();//开始

//连接数据库

$db=newMySQLi("localhost","root","","z_gwc");

!mysqli_connect_error()ordie("连接失败");

$db->query("set names utf8");

//获取传值

$ids=$_POST["ids"];

$uid=$_SESSION["uid"];

$date=date("Y-m-d h:i:s");//获取时间

$sql="select numbers from fruit where ids='$ids'";

$res=$db->query($sql);

$att=$res->fetch_row();

foreach($attas$v){

if($v>){//条件判断

$sql="insert into orders values('$uid"."$date','$uid','$date')";

$db->query($sql);

$sql="insert into orderdetails values('','$uid"."$date','$ids',1)";

$db->query($sql);

header("location:index1.php?ids=$ids");

}else{

header("location:index1.php?kc=库存不足");

}

}

?>

如点击“桔子”后面的购买,发生如下变化:

此时购物车页面:

购物车代码:

session_start();//开始

//连接数据库

$db=newMySQLi("localhost","root","","z_gwc");

!mysqli_connect_error()ordie("连接失败");

$db->query("set names utf8");

$strpice=$_GET["strpice"];//接收从index.php传过来的商品总价

$ids=$_GET["ids"];

$dlStr=$_SESSION["dlStr"];//超全局

//查询数据

$sql="select a.ids,".

"a.ordercode,".

"b.name,".

"b.price,".

"count(a.count) ".

"from orderdetails as a ".

"join fruit as b ".

"on a.fruitcode=b.ids group by b.name;";

$res=$db->query($sql);

$spattr=$res->fetch_all();

?>

购物车

登录

大苹果购物网

浏览商品

查看账户

查看购物车

商品名称

商品单价

购买数量

操作

">

"method="post">

value="">

删除

?>

&ids=">提交订单

点击“提交订单”,跳到订单处理页面dingdanchuli.php 将订单提交,删除订单信息,商品库存减少:

session_start();

//连接数据库

$db=newMySQLi("localhost","root","","z_gwc");

!mysqli_connect_error()ordie("连接失败");

$db->query("set names utf8");

$uid=$_SESSION["uid"];//获取超全局变量uid

$strpice=$_GET["strpice"];//这是商品传过来的总价

$ids=$_GET["ids"];

$dlStr=$_SESSION["dlStr"];//余额

/*sql语句查询订单号*/

$sql="select code from orders where username='$uid'";

$res=$db->query($sql);

$codstr=$res->fetch_all();

$jg="";

if($dlStr>=$strpice){

$jg="提交成功";

foreach($codstras$v){

$sql="update login set account =account-$strpice where username='$uid'";

$db->query($sql);

$sql="update fruit set numbers=numbers-1 where ids='$ids'";

$db->query($sql);

//删除orders表中内容

$sql="delete from orders where code='$v[0]'";

$db->query($sql);

//删除orderdetails表中的内容

$sql="delete from orderdetails where ordercode='$v[0]'";

$db->query($sql);

}

}else{

$jg="余额不足";

}

//跳转页面

header("location:ViewAccount.php?jg=$jg");

?>

显示余额的页面:

代码:

session_start();//开始

$jg=$_GET["jg"];//获取从dingdanchuli.php接收的结果值

$uid=$_SESSION["uid"];//超全局变量uid

/*连接数据库*/

$db=newMySQLi("localhost","root","","z_gwc");

!mysqli_connect_error()ordie("连接失败");

$db->query("set names utf8");

/*sql语句查询余额*/

$sql="select * from login where username='$uid'";

$res=$db->query($sql);//执行sql语句

$dlattr=$res->fetch_row();//获取一维数组结果集

$_SESSION["dlStr"]=$dlattr[3];//设置全局变量余额dhStr

?>

余额

登录

大苹果购物网

浏览商品

查看账户

查看购物车

您的账户中还剩余元。

点击“提交订单”后,商品页面变化:

购物车页面清空,变化如下:

余额页面变化:

以上内容希望帮助到大家,有需要的可以添加下方二维码进群交流学习新技术。

文来源:https://www.cnblogs.com/dns6/p/8476021.html

如果你想和PHP大神交流,添加微信,拉你入群

如果你想获得更多学习资料,添加微信,送你资源

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20181122A0S6UY00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。

扫码关注云+社区

领取腾讯云代金券