¿y donde está el ciclo?, porque lo que veo es ésto:
Código PHP:
Ver original$_SESSION["quien"]=$reg["id_producto"];
?>
si éso está dentro de un ciclo, lo ideal es usar:
$_SESSION["quien"][]=$reg["id_producto"];
para registrar un array, de lo contrarío siempre será el último