Foros del Web » Programando para Internet » PHP »

carritode compras

Estas en el tema de carritode compras en el foro de PHP en Foros del Web. hola alguien me puede ayudar a entender esto Código PHP:   <?php    session_start ();   //con session_start() creamos la sesión   //si no existe o la retomamos si ya ha   //sido creada   extract ( $_REQUEST );   //la función extract toma las claves   //de una matriz asoiativa y las   //convierte en nombres de variable,   //asignándoles a esas variables   ...
  #1 (permalink)  
Antiguo 20/01/2008, 18:27
 
Fecha de Ingreso: diciembre-2007
Mensajes: 267
Antigüedad: 16 años, 3 meses
Puntos: 3
carritode compras

hola alguien me puede ayudar a entender esto
Código PHP:
 <?php   
session_start
();  
//con session_start() creamos la sesión  
//si no existe o la retomamos si ya ha  
//sido creada  
extract($_REQUEST);  
//la función extract toma las claves  
//de una matriz asoiativa y las  
//convierte en nombres de variable,  
//asignándoles a esas variables  
//valores iguales a los que tenía  
//asociados en la matriz. Es decir,  
//convierte a $_GET['id'] en $id,  
//sin que tengamos que tomarnos el  
//trabajo de escribir  
//$id=$_GET['id'];   
mysql_connect("localhost","usuario","password");  
mysql_select_db("db");  
//incluímos la conexión a nuestra  
//base de datos  
if(!isset($cantidad)){$cantidad=1;}  
//Como también vamos a usar este  
//archivo para actualizar las  
//cantidades, hacemos que cuando  
//la misma no esté indicada sea  
//igual a 1  
$qry=mysql_query("select * from catalogo where   
id='"
.$id."'");  
$row=mysql_fetch_array($qry);  
//Si ya hemos introducido algún  
//producto en el carro lo  
//tendremos guardado temporalmente  
//en el array superglobal  
//$_SESSION['carro'], de manera  
//que rescatamos los valores de  
//dicho array y se los asignamos  
//a la variable $carro, previa   
//comprobación con isset de que  
//$_SESSION['carro'] ya haya sido  
//definida  
if(isset($_SESSION['carro']))  
$carro=$_SESSION['carro'];  
//Ahora introducimos el nuevo  
//producto en la matriz $carro,  
//utilizando como índice el id  
//del producto en cuestión,  
//encriptado con md5.  
//Utilizamos md5 porque genera  
//un valor alfanumérico que luego,  
//cuando busquemos un producto  
//en particular dentro de la  
//matriz, no podrá ser confundido  
//con la posición que ocupa dentro  
//de dicha matriz, como podría  
//ocurrir si fuera sólo numérico.  
//Cabe aclarar que si el producto  
//ya había sido agregado antes,  
//los nuevos valores que le  
//asignemos reemplazarán a los  
//viejos.   
//Al mismo tiempo, y no porque  
//sea estrictamente necesario  
//sino a modo de ejemplo,  
//guardamos más de un valor en  
//la variable $carro, valiéndonos  
//de nuevo de la herramienta array.  
$carro[md5($id)]=array('identificador'=>md5($id),  
'cantidad'=>$cantidad,'producto'=>$row['producto'],  
'precio'=>$row['precio'],'id'=>$id);  
//Ahora dentro de la sesión  
//($_SESSION['carro']) tenemos  
//sólo los valores que teníamos  
//(si es que teníamos alguno)   
//antes de ingresar a esta página  
//y en la variable $carro tenemos  
//esos mismos valores más el que  
//acabamos de sumar. De manera que   
//tenemos que actualizar (reemplazar)  
//la variable de sesión por la  
//variable $carro.  
$_SESSION['carro']=$carro;  
//Y volvemos a nuestro catálogo de  
//artículos. La cadena SID representa  
//al identificador de la sesión, que,  
//dependiendo de la configuración del  
//servidor y de si el usuario tiene  
//o no activadas las cookies puede  
//no ser necesario pasarla por la url.  
//Pero para que nuestro carro funcione,  
//independientemente de esos factores,  
//conviene escribirla siempre.  
header("Location:catalogo.php?".SID);  
?>
please alguien q me explicque

Última edición por GatorV; 21/01/2008 a las 08:55 Razón: Agregar Tags de PHP
  #2 (permalink)  
Antiguo 20/01/2008, 18:32
 
Fecha de Ingreso: diciembre-2007
Mensajes: 267
Antigüedad: 16 años, 3 meses
Puntos: 3
Re: carritode compras

aqui es q creo el problema $qry=mysql_query("select * from catalogo where
id='".$id."'");
$row=mysql_fetch_array($qry);
//Si ya hemos introducido algún
//producto en el carro lo
//tendremos guardado temporalmente
//en el array superglobal
  #3 (permalink)  
Antiguo 20/01/2008, 18:35
Avatar de Italico76  
Fecha de Ingreso: abril-2007
Mensajes: 3.303
Antigüedad: 17 años
Puntos: 292
Exclamación Re: carritode compras

* No postees codigos con comentarios interminables.
* Usa los tags PHP para que el codigo aparezca coloreado y sea mas legible (esta arriba en la barra con iconos)
__________________
Salu2!
  #4 (permalink)  
Antiguo 21/01/2008, 08:12
 
Fecha de Ingreso: noviembre-2006
Mensajes: 102
Antigüedad: 17 años, 4 meses
Puntos: 0
Re: carritode compras

A esto se refiere:

Código PHP:
<?php
session_start
();
//con session_start() creamos la sesión
//si no existe o la retomamos si ya ha
//sido creada
extract($_REQUEST);
//la función extract toma las claves
//de una matriz asoiativa y las
//convierte en nombres de variable,
//asignándoles a esas variables
//valores iguales a los que tenía
//asociados en la matriz. Es decir,
//convierte a $_GET['id'] en $id,
//sin que tengamos que tomarnos el
//trabajo de escribir
//$id=$_GET['id'];
mysql_connect("localhost","usuario","password");
mysql_select_db("db");
//incluímos la conexión a nuestra
//base de datos
if(!isset($cantidad)){$cantidad=1;}
//Como también vamos a usar este
//archivo para actualizar las
//cantidades, hacemos que cuando
//la misma no esté indicada sea
//igual a 1
$qry=mysql_query("select * from catalogo where
id='"
.$id."'");
$row=mysql_fetch_array($qry);
//Si ya hemos introducido algún
//producto en el carro lo
//tendremos guardado temporalmente
//en el array superglobal
//$_SESSION['carro'], de manera
//que rescatamos los valores de
//dicho array y se los asignamos
//a la variable $carro, previa
//comprobación con isset de que
//$_SESSION['carro'] ya haya sido
//definida
if(isset($_SESSION['carro']))
$carro=$_SESSION['carro'];
//Ahora introducimos el nuevo
//producto en la matriz $carro,
//utilizando como índice el id
//del producto en cuestión,
//encriptado con md5.
//Utilizamos md5 porque genera
//un valor alfanumérico que luego,
//cuando busquemos un producto
//en particular dentro de la
//matriz, no podrá ser confundido
//con la posición que ocupa dentro
//de dicha matriz, como podría
//ocurrir si fuera sólo numérico.
//Cabe aclarar que si el producto
//ya había sido agregado antes,
//los nuevos valores que le
//asignemos reemplazarán a los
//viejos.
//Al mismo tiempo, y no porque
//sea estrictamente necesario
//sino a modo de ejemplo,
//guardamos más de un valor en
//la variable $carro, valiéndonos
//de nuevo de la herramienta array.
$carro[md5($id)]=array('identificador'=>md5($id),
'cantidad'=>$cantidad,'producto'=>$row['producto'],
'precio'=>$row['precio'],'id'=>$id);
//Ahora dentro de la sesión
//($_SESSION['carro']) tenemos
//sólo los valores que teníamos
//(si es que teníamos alguno)
//antes de ingresar a esta página
//y en la variable $carro tenemos
//esos mismos valores más el que
//acabamos de sumar. De manera que
//tenemos que actualizar (reemplazar)
//la variable de sesión por la
//variable $carro.
$_SESSION['carro']=$carro;
//Y volvemos a nuestro catálogo de
//artículos. La cadena SID representa
//al identificador de la sesión, que,
//dependiendo de la configuración del
//servidor y de si el usuario tiene
//o no activadas las cookies puede
//no ser necesario pasarla por la url.
//Pero para que nuestro carro funcione,
//independientemente de esos factores,
//conviene escribirla siempre.
header("Location:catalogo.php?".SID);
?>
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 20:42.