2011-04-29 3 views
0
나는 쇼핑 카트에 대한 대학 운동에서 일하고 있어요

, 나는, 배열로 POST 값을 변환 그러나 나는 다음과 같은 메시지가 얻을 이러한 배열 값 에코 때PHP : 배열 => 정의되지 않은 인덱스

Notice: Undefined index: item in line 40 
Notice: Undefined index: quantity in line 40 

여기에 라인 40의 :

echo "1. ".$_SESSION['lista']['item']." ".$_SESSION['lista']['quantity']." unidades".", ".$_SESSION['lista']['price']." CRC."; 

여기에 전체 스크립트입니다 :

<?php 

session_start(); 

//Obtengo la lista 
$lista[]= $_SESSION['lista']; 

//Guardo un valor en la lista 
/* 
$articulo= $_POST['articulo']; 
$cantidad= $_POST['cantidad']; 
$codigo= $_POST['codigo']; 
*/ 

//Listado 
$articulos = array(

    'Papaya' => 500, 'Banano' => 50, 'Mango' => 150, 
    'Leche' => 500, 'Cafe' => 1200, 'Mantequilla' => 300, 
    'Pan' => 450, 'Jugo' => 780, 'Mani' => 800, 
    'Yogurt' => 450, 'Cerveza' => 550, 'Vino' => 2500, 
); 

$_SESSION['lista'] = array(
'item' => ($_POST['articulo']), 
'quantity' => ($_POST['cantidad']), 
'code' => ($_POST['codigo']), 
); 

//precio 
$precio = $articulos[($_SESSION['lista']['item'])] * $_SESSION['lista']['quantity']; 

$_SESSION['lista'] = array('price' => $precio,); 


//listado 
echo "<b>LISTADO DE COMPRA</b></br>"; 


echo "1. ".$_SESSION['lista']['item']." ".$_SESSION['lista']['quantity']." unidades".", ".$_SESSION['lista']['price']." CRC."; 

/*foreach($_SESSION['lista'] as $key => $item) { 
    echo $key, '. ', $item['item'], ' ', $item['quantity'], ' units'; 
} 
*/ 

//Regreso a la lista 
$_SESSION['lista'] = $lista; 



var_dump($_SESSION); $lista; 

echo "</br> <a href='index.html'>Volver al indice</a>"; 

//SESSION_DESTROY = Elimina todo 

//Imprimo lo que hay en session 
var_dump($_SESSION); 

?> 

답변

0

의미 $ _SESSION [ "중고 장비 구매"] 편곡이 ay에는 "항목"또는 "수량"에 대한 요소가 없습니다.

전체 당신이 인 print_r 사용할 수있는 $ _SESSION의 내용()를 참조하려면 HTML이 좋은 보이지 않는 것

print_r($_SESSION); 

주, 당신은 당신의 브라우저에 "소스보기"를 사용해야합니다 그것을 좋은 형태로 보아라.

+0

당신이 옳았습니다, 항목은 배열에 없으며 내가 말할 수있는 양이 아닙니다. 내가 뭘 잘못하고 있는지 이해가 안돼! –

0

session_start를 호출하기 전에 빈 내용을 출력하는 것이 잘못 되었습니까? <?php이 들어있는 첫 번째 줄을 보면 태그 앞에 몇 개의 공백이 있음을 알 수 있습니다.

<?php 
^^^^ 

올바르게 세션을 시작하려면 세션을 제거해야합니다.

관련 문제