Espero que entiendas lo que hice, si algo falla es porque no tengo tu BD y algunas cosas las probe creandome arreglos.. pero creo que esto te ayudara a entender mejor..
Código PHP:
<?php
session_start();
if(isset($_SESSION['carro']))
$carro=$_SESSION['carro'];
include('conec.php');
conectarse();
$autori = $_POST["cantidad_autori"];
$id = $_POST["id"];
// el arreglo de id's se pasa a valores separados por comas
$arrId = implode(",", $id);
// realizas la consulta pasando los parametros separados por comas
$qry = mysql_query("SELECT * FROM catalogo WHERE id IN (".$arrId.")");
// si hay algun error.. adios!!.. y veamos el error
if (!$qry)
die ("Error: ". mysql_error());
// si hay resultados entonces continuamos
if (mysql_num_rows($qry) != 0) {
// vaciamos el resultado de la consulta a $row
$row = mysql_fetch_array($qry, MYSQL_ASSOC);
// recorremos el arreglo $autori, esto se hara por cada elemento de $autori
foreach($autori as $clave => $valor) {
$carro[md5($id[$clave])] = array (
'identificador'=>md5($id[$clave]),
'cantidad'=>$cantidad,
'medicamento'=>$row['medicamento'],
'precio'=>$row['precio'],
'id'=>$id[$clave],
'cantidad_autorizada'=>$valor
);
}
}
echo "<pre>";
print_r($carro);
echo "</pre>";
$_SESSION['carro'] = $carro;
?>