因为test是字符型变量,所以每次提交后都会将存放在cookie中的test的值冲掉。所以只会得到最后一次的结果。

解决方案 »

  1.   

    该怎么改呢?
    在做商店的时候用户是通过
    <input type="hidden" name="selected_item_no" value="<?=$db->get('isbn_id')?>">selected_item_no提交的,按你说的在提交一次会把上次的冲掉,那该怎么处理呢?
    我后来改成这样:
    setcookie("test[$total]",$_POST['test']);
    $total++;
    setcookie("counter",$total);
    注册也不行呀,请指教!
      

  2.   

    COOKIE对处理数组的功能很弱,还是用SESSION吧。
      

  3.   

    没有测试
    try:
    <?
    if($_POST['submit'])
    {
    for ($i=0; $i<100; $i++) {
    if (isset($test[$i])) {
    continue;
    }
    setcookie("test[$i]", $_POST['test']);
    break;
    }
    }
    ?>
      

  4.   

    我也感觉到cookie的数组方面功能很弱。
      

  5.   

    cookie这方面的功能的确很弱,你可以到phpbuilder.com去看看,那有个购物车挺好,但是设计的时候是php4.30以前的版本,现在拿来用要修改一下,因为现在register_globals 默认为off,你需要修改成$_SESSION[]