Ver Mensaje Individual
  #2 (permalink)  
Antiguo 10/08/2004, 20:55
Cluster
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Podrías empezar por ver como trabajar con sesiones y que son (teoría):

www.php.net/session

En las FAQ's de este foro PHP tienes un ejemplo básico de uso.

Sólo tienes que tener presente que una "sesión" no es más que un contenedor de "variables" (y de cualquier tipo) .. Así que tan sólo tienes que usar un simple array para ir gestionando tus "ID" (de referencia): añadiendo elementos (y/o borrandolos o modificandolos si corresponde) .. Eso será (ese array) tu "cesta" ...

Para que tu "cesta" (ese array) tenga validez en todas las páginas de tu sitio que visite y pueda ir añadiendo "ID's" para que al "finalizar" puedas leer ese array al completo, usarás la sesión para "propagar" ese array (como si de una variable cualquiera se tratase).

Piensa siempre que vas a trabajar con un "array" tipo:

lee_cesta.php
Código PHP:
<?
session_start
();
if (isset(
$_SESSION['ids'])){
$ids=$_SESSION['ids'];
} else {
$ids=array();
}

// Ejemplo .. trabajar con el array común .. leerlo todo
foreach ($ids as $id){
  echo 
$id;
}
?>
acomula_id.php
Código PHP:
<?
// Inicio uso sesiones (se asume propagación del SID en cookies ...)
session_start();
// Comprobación existencia variable Sesión "ids"
if (isset($_SESSION['ids'])){
$ids=$_SESSION['ids'];
} else {
$ids=array();
}

// Sumar elemento al array
array_push($ids,$_GET['id']);

?>
Y su uso ...
acomula_id.php?id=nºID

Eso sería la base .. sólo tienes que redireccionar desde acomula_id.php a donde quieras .. por ejemplo podría ser al "HTTP_REFERER" (página referida) .. o a "leer_cesta.php" (si es que usas una página integra para tal fin ..) o a otro sítio tipo:

Código PHP:
if (isset($_SERVER['HTTP_REFERER'])){
  
header ("Location: ".$_SERVER['HTTP_REFERER']);
  exit;
} else {
  
header ("Location: lee_cesta.php");
  exit; 

Uso el "if()" para comprobar si se obtiene la información de la página referida como para dejar tras añadir el nuevo ID a la cesta en la página que estaba .. si no se obtiene (en algunos casos no se puede obtener dicha información .. ) lo redirecciono hacia el "lee_cesta.php"

Un saludo,