Bueno ya no se me sobrescribe la variable con valor undefined. pero ahora resulta que tengo que darle dos veces a la cantidad que deseo para que se efectué el cambio.
Os dejo el código haber si podéis echarle un vistazo
Código PHP:
Ver originalpublic function trace() {
$out = "";
$iterator = $this->productos->getIterator();
$i=0;
while($iterator->valid())
{
$out .= '<div class="articulo">
<div class="infoPrin">
<div class="miniatura"><img src="../'.$prod->imagen.'" width="90" height="90"/></div>
<div class="info">
<h4>'.$prod->nombre.'</h4>
<p>Talla: Unica</p>
</div><!--Info-->
</div><!--infoPrin-->
<div>
<form id="cant'.$i.'" name="cant" method="post" action="#">
<select onchange="selecCant('.$i.')" name="cantidad'.$i.'">
<option selected value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
</select>
</form>
</div>
<div class="promocion">'.$_SESSION['cantidad'.$i].' </div>
<div class="precio">'.$prod->precio.'€ </div>
<div class="lineaSep"></div>
</div>
';
if(isset($_POST['cantidad'.$i])){ $_SESSION['cantidad'.$i] = $_POST['cantidad'.$i];
}else{
if(!isset($_SESSION['cantidad'.$i])) $_SESSION['cantidad'.$i] =1;
}
echo "Sesion: ".$i ." ". $_SESSION['cantidad'.$i]."<br />";
$i++;
}
return $out;
}
Gracias y un saludo