php完成购物车程序代码
发布时间:2022-02-10 15:54:10 所属栏目:PHP教程 来源:互联网
导读:购物车是现在电商开发者必须要做的一个功能了,下面我来给大家整理两个可用于电商网站的简单购物车程序代码,有兴趣的同学不防进入参考一下. 例子1:最近在写一个电子商务的网站,在做购物车的时候才发现php里面没有map这种数据结构,我们不能简单的通过一个hashm
购物车是现在电商开发者必须要做的一个功能了,下面我来给大家整理两个可用于电商网站的简单购物车程序代码,有兴趣的同学不防进入参考一下. 例子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; }//开源代码Cuoxin.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('关闭异常'); } } (编辑:好传媒网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |