php实现购物车程序代码
发布:smiling 来源: PHP粉丝网 添加日期:2014-08-26 11:05:22 浏览: 评论:0
购物车是现在电商开发者必须要做的一个功能了,下面我来给大家整理两个可用于电商网站的简单购物车程序代码,有兴趣的同学不防进入参考一下.
例子1:最近在写一个电子商务的网站,在做购物车的时候才发现php里面没有map这种数据结构,我们不能简单的通过一个hashmap来实现购物车,于是我想到到数组,通过数组的值的格式化来进行编写.
也就是说,我们是通过循环数组的值,通过拆分值来判断数据是不是重复,比如我现在浏览的商品的id是4,添加的数量是3,我就在数组里面存放4-3,以后如果当遇到是id是4的时候,我们只是需要时改变数组里面这个位置的数值,如果id在数组里面拆分比较都不存在,则往数组里面添加数据,删除购物车制定id 的商品也是循环数组,这个值,使用unset()来释放这个值.
具体的实现代码,如下:
- <?php
- session_start();
- if($_SESSION['carts']==””){
- $carts=array();
- array_push($carts, “0-0″);
- $_SESSION['carts']=$carts;
- }
- $method=$_GET['method'];
- if($method==”add”){
- $productId=$_GET['productid'];
- $number=$_GET['number'];
- $carts=$_SESSION['carts'];
- $flag=”false”;
- for($i=0;$i<sizeof($carts);$i++){
- $pn=$carts[$i];
- $pns=split(“-”, $pn);
- if($pns[0]==$productId){
- $carts[$i]=$productId.”-”.$number;
- $flag=”true”;
- $location=$i;
- }
- }
- if($flag==”true”){
- $carts[$location]=$productId.”-”.$number;
- }else{
- array_push($carts, $productId.”-”.$number);
- }
- $_SESSION['carts']=$carts;
- }//开源代码phpfensi.com
- if($method==”delete”){
- $productId=$_GET['productid'];
- $carts=$_SESSION['carts'];
- for($i=0;$i<sizeof($carts);$i++){
- $pn=$carts[$i];
- $pns=split(“-”, $pn);
- if($pns[0]==$productId){
- unset($carts[$i]);
- }
- }
- $_SESSION['carts']=$carts;
- }
- ?>
上面电子商务课程的时候做的一个简单的程序了,就是一个在线购物,不过还是90多分的,其实只要是这种类似的程序,都是简单的增删改查系统,无非就是就对数据库的操作,我们要做的就是很好的实现这个业务逻辑,以及能很好的设计相关的字段来控制,比如是商品的状态的控制,是上线还是下线,还是推荐的.
现在看看连接数据库的代码吧,数据库配置代码,其实这个可以在xml配置文件里面设置,代码如下:
- class DbConfig{
- var $databaseAddress="180.153.178.89";
- var $dataBaseUser="pantingwen";
- var $databasePassword="753116";
- var $database="sqlpantingwen";
- /**
- * @return the $databaseAddress
- */
- public function getDatabaseAddress() {
- return $this->databaseAddress;
- }
- /**
- * @return the $dataBaseUser
- */
- public function getDataBaseUser() {
- return $this->dataBaseUser;
- }
- /**
- * @return the $databasePassword
- */
- public function getDatabasePassword() {
- return $this->databasePassword;
- }
- /**
- * @return the $database
- */
- public function getDatabase() {
- return $this->database;
- }
- /**
- * @param field_type $databaseAddress
- */
- public function setDatabaseAddress($databaseAddress) {
- $this->databaseAddress = $databaseAddress;
- }
- /**
- * @param field_type $dataBaseUser
- */
- public function setDataBaseUser($dataBaseUser) {
- $this->dataBaseUser = $dataBaseUser;
- }
- /**
- * @param field_type $databasePassword
- */
- public function setDatabasePassword($databasePassword) {
- $this->databasePassword = $databasePassword;
- }
- /**
- * @param field_type $database
- */
- public function setDatabase($database) {
- $this->database = $database;
- }
- }
数据库连接代码:
- include_once 'DbConfig.php';
- define("conn", getcon());
- function getcon(){
- $dbConfig=new DbConfig();
- $con=mysql_connect($dbConfig->getDatabaseAddress(),$dbConfig->getDataBaseUser(),$dbConfig->getDatabasePassword());
- return $con;
- }
- /**
- * 选择一款数据库
- * Enter description here ...
- */
- function _select_db(){
- $dbConfig=new DbConfig();
- if(!mysql_select_db($dbConfig->getDatabase())){
- exit('找不到指定的数据库');
- }
- }
- /**
- * 设置字符集
- * Enter description here ...
- */
- function _set_names(){
- if(!mysql_query('set names utf8')){
- exit('字符集错误');
- }
- }
- function _query($_sql){
- _select_db();
- _set_names();
- if(!$result=mysql_query($_sql,conn)){
- echo mysql_error();
- }
- return $result;
- }
- /**
- * 只能是获取一个数据组
- * Enter description here ...
- * @param unknown_type $_sql
- */
- function _fetch_array($_sql){
- return mysql_fetch_array(_query($_sql),MYSQL_ASSOC);
- }
- /**
- * 返回数据组
- * Enter description here ...
- * @param unknown_type $_sql
- */
- function _fetch_array_list($_result){
- return mysql_fetch_array($_result,MYSQL_ASSOC);
- }
- /**
- * 影响到到的记录数
- * Enter description here ...
- */
- function _affect_rows(){
- return mysql_affected_rows();
- }
- /**
- * 判断是不是存在数据
- * Enter description here ...
- * @param unknown_type $_sql
- * @param unknown_type $_info
- */
- function _is_repeat($_sql,$_info){
- if(_fetch_array($_sql)){
- }
- }
- function _close(){
- if(!mysql_close(_conn)){
- exit('关闭异常');
- }
- }
Tags: php购物车 购物车程序
相关文章
- ·实用的php购物车程序(2014-09-05)
- ·php购物车实例(2014-09-09)
- ·php购物车实现代码(2014-09-09)
- ·php购物车代码(2014-09-09)
- ·PHP购物车用法之更新购物车数量(2014-09-10)
推荐文章
热门文章
最新评论文章
- 写给考虑创业的年轻程序员(10)
- PHP新手上路(一)(7)
- 惹恼程序员的十件事(5)
- PHP邮件发送例子,已测试成功(5)
- 致初学者:PHP比ASP优秀的七个理由(4)
- PHP会被淘汰吗?(4)
- PHP新手上路(四)(4)
- 如何去学习PHP?(2)
- 简单入门级php分页代码(2)
- php中邮箱email 电话等格式的验证(2)