2011-09-11 14 views
0

ショッピングカートを作成しようとしています。 add関数を作成しました。ここでproductIDがすでにバスケットに存在する場合は、数量が追加され、余分に追加されます。アレイ内の特定の値を更新する(ショッピングカート)

そしてここでは私の問題だ:

あなたはバスケット内の既存の製品に同製品の余分3を追加しようとすると - 私が使用しているため、それが唯一、1以上を追加します:$ _SESSION [」にkurv '] [$ i] [' Antal '] ++;

$ _POST ['iAntal']をSESSIONに追加するにはどうすればいいですか?

$iName = $_GET['iName']; 
$iId = $_GET['iId']; 
$iPrice = $_GET['iPrice']; 
$iAntal = $_POST['iAntal']; 
$action = $_GET['action']; 

    case "add": 
     if(isset($_SESSION['kurv'])) 
         { 
           $laengde=sizeof($_SESSION['kurv']); 
           for ($i=0; $i<$laengde; $i++) 
           { 
             if (isset($_SESSION['kurv'][$i])) 
             { 
             if ($_SESSION['kurv'][$i]['ProductID'] == $iId) 
               { 
                 $fundet=1; 
                 $_SESSION['kurv'][$i]['Antal']++; 
               } 
             } 
           } 
         } 
         if (!isset($fundet)) 
         { 
           $kurv = array(
            'ProductID' => $iId, 
            'Name' => $iName, 
            'Price' => $iPrice, 
            'Antal' => $iAntal 
           ); 
           $_SESSION['kurv'][] = $kurv; 
         } 
    break; 

答えて

2

$_SESSION['kurv'][$i]['Antal'] += (int) $_POST['iAntal'];

+0

グレートフラウィウス。完璧に動作します:-) – skolind

0

あなたはこれで多くの製品を追加することができます。

$quantity = $_GET["quantity"]; 
$_SESSION['kurv'][$i]['Antal'] = $_SESSION['kurv'][$i]['Antal']+$quantity; 
関連する問題