//wt_buy.php 
session_start();
//把商品的id加入购物车
$id=$_GET['id'];
if ($id!=0&&isset($id))
    {
        $basket_amount = array();
        $basket_id = array();
         if ($_SESSION['basket_items'])  
             {
       $basket_items=$_SESSION['basket_items'];
       require("addto_basket.inc"); 
    }
 else  
             { 
       $basket_items=1;
       require("new_basket.inc");
    }
    }
require("displaytcl.php");
?>//new_basket.inc
<?php
// 在session中注册新的篮子  
//用从href链接传过来的值填充数组的第0个位置的值
$basket_items=1; //计数设为1,购物车商品的个数
$basket_amount[0]=1; //每个商品的个数
$basket_id[0]=$id; //每个商品在数据库中的id
$_SESSION['basket_items']=$basket_items;
?>//addto_basket.inc
<?php
$ff=0; //设置标志为1
//foreach($basket_name as $basket_item)
for($count=0;$count<$basket_items;$count++)
        {
       if ($basket_id[$count]==$id)
          // 遍历数组所包含的名字,检查是否与从href所传来的相匹配                          
                {
                  $ff=1;
                  // 如果在篮子中已经有了一个项目,将ff设为1
                  $basket_position=$count;
                  // 记住项目的位置,将进行更新
                }
         }
          if ($ff==1)
               {
                  // 如果项目在购物篮中已经存在则更新在$basket_position处理的数量和位置
                  $basket_amount[$basket_position]++;
              }
          else
               {
                // 如果它不在你的篮子中,则在数组末尾增加新的项目
        $basket_amount[$basket_items]=1;
        $basket_id[$basket_items]=$id;
        $basket_items++;
               }
?>
我在页面中首次将商品放入购物车会出现如下错误
Notice: Undefined index: basket_items in D:\wamp\www\60hd\wt\wt_buy.php on line 29您选购了 1 种产品
去收银台 | 调整商品再次放入商品出现错误为Notice: Undefined offset: 0 in D:\wamp\www\60hd\wt\addto_basket.inc on line 6您选购了 2 种产品
去收银台 | 调整商品在放入商品错误也没变,选购产品的数量也没增加,不知是么原因?

解决方案 »

  1.   

    屏蔽掉 Notice 类型的错误警告php.ini中
    error_reporting = E_ALL & ~E_NOTICE或程序中
    error_reporting(E_ALL ^ E_NOTICE);
      

  2.   

    太乱,逻辑问题,session没给上
      

  3.   

    if ($_SESSION['basket_items'])   
      {
    $basket_items=$_SESSION['basket_items'];
    require("addto_basket.inc");  
    }上面的地方有问题
    if(isset($_SESSION['basket_items'])){
    ...
    }
    在你初始化的话。session中是没有basket_items这个值的.