Como se hace eso??????

Carlos
13 de Julio del 2005
De antemano un saludo y las gracias por las respuestas que me den. Bueno tengo el siguiente problema, tengo una pagina web hecha en php
con un carrito de compra, en la ultima pagina(la del carrito) me muestra el resultadode lo q selecciono, ahora tengo que llevar estos resultados en un campo de entrada pues me dijeron que tambien se puede aumentar el numero de items seleccionados, veamos, seleccione 1 libro y una pelota, ahora en la pagina resultante quiero cambiar el numero de pelota por 2, y eso como lo hago???
bueno no me quiero extender mucho la verdad que estoy con ese problemita, por favor respondanme pronto !!!!!!!!!!!!!!

Loop
13 de Julio del 2005
Bueno a decir verdad si tú hubieses programado el carrito de compra esto no sería problema...... pero en fin...

Soy muy amable =)

Sencillo .... se crea un array con la cantidad de productos es decir cantidad 20 pelotas rojas, en donde 20 es $num_p; y será incrementado o decrementado según sea el caso y el cliente quiera .......
<?php

class carrito {

var $total_p; // Total de productos es decir sólo los que son Diferentes
var $num_p=array(); // Total de productos de un solo tipo
var $precio=array(); // precios de los productos
var $nombre=array(); // nombres de los productos
var $sid=array(); // Id de los producto

function carrito(){
$this->total_p = 0;
}

function mete($a,$b,$c,$d){
$this->num_p[$this->total_p]=$a;
$this->precio[$this->total_p]=$b;
$this->nombre[$this->total_p]=$c;
$this->sid[$this->total_p]=$d;
$this->total_p++;
}

function ver_info(){
$total = 0;
for($i=0;$i<$this->total_p;$i++){
echo "Nombre : ".$this->nombre[$i]."<br />";
echo "Precio : ".$this->precio[$i]."<br />";
echo "Id : ".$this->sid[$i]."<br />";
echo "Cantidad :".$this->num_p[$i]."<a href='?A=true&amp;id=".$this->sid[$i]."'>Sumar uno </a> ó <a href='?Q=true&amp;id=".$this->sid[$i]."'>Quitar uno</a><br />";
echo "<a href='?de=true&amp;id=".$this->sid[$i]."'>Eliminar este producto</a><br /><br /><br />";
$total+=$this->precio[$i];
}
echo "<br /> <br /> Total :".$total."<br />";
echo "Total de productos :".$this->total_p."<br />";
}

function eliminar($i){
unset($this->sid[$i],$this->nombre[$i],$this->precio[$i],$this->num_p[$i]);
$this->total_p--;
}

function incrementa($id){
for($i=0;$i<$this->total_p;$i++){
if($id==$this->sid[$i]){
$this->num_p[$i]++;
}
}
}

function decrementa($id){
for($i=0;$i<$this->total_p;$i++){
if($id==$this->sid[$i] && $this->num_p[$i]>1){
$this->num_p[$i]--;
}
}
}
}
session_start();

if(!isset($_SESSION['DammItCarrito'])){
$_SESSION['DammItCarrito']=new carrito();
}
if(isset($_GET['in'],$_GET['n'],$_GET['id'],$_GET['p'],$_GET['num'])){
$_SESSION['DammItCarrito']->mete($_GET['num'],$_GET['p'],$_GET['n'],$_GET['id']);
echo "Se introdujo el producto !!! <br />";
$_SESSION['DammItCarrito']->ver_info();
}
if(isset($_GET['de'],$_GET['id'])){
$_SESSION['DammItCarrito']->eliminar($_GET['id']);
$_SESSION['DammItCarrito']->ver_info();
}
if(isset($_GET['Q'],$_GET['id'])){
$_SESSION['DammItCarrito']->decrementa($_GET['id']);
$_SESSION['DammItCarrito']->ver_info();
}
if(isset($_GET['A'],$_GET['id'])){
$_SESSION['DammItCarrito']->incrementa($_GET['id']);
echo " Se incrementó !!! <br />";
$_SESSION['DammItCarrito']->ver_info();
}
if(isset($_GET['ViewCarrito'])){
$_SESSION['DammItCarrito']->ver_info();
}
?>
<br />Seleccione los productos... <br />
<a href="?in=true&amp;n=mis+pelotas+xD&amp;id=1&amp;p=549&amp;num=1">mis pelotas xD</a><br />
<a href="?in=true&amp;n=una+cosa+mas&amp;id=2&amp;p=20&amp;num=1">Otra cosa</a>
O vea la info ... <br />
<a href="?ViewCarrito=true">Ver carrito</a>


¡ Saludos !

Carlos
13 de Julio del 2005
muchas gracias por tu respuesta Loop, he podido ver tu codigo muy interesante por cierto, pero no obtengo los resultados. mira aqui te mando el codigo para que lo veas entre lineas he puesto donde ingreso el nuevo valor y bla bla bla bla.

codigo
<?php
function calcular_precio($carrito){
include("conexion.inc");
$ptotal=0.00;
foreach($carrito as $codlibro=> $cantidad){
$sql="select libro_precio from libro where libro_codigo=$codlibro";

$resultado=mysql_query($sql,$conexion);
if($resultado){
$punitario=mysql_result($resultado,0,'libro_precio');
$ptotal=$ptotal+$punitario*$cantidad;
}
}
return $ptotal;
}
function calcular_items($carrito){
$items=0;
foreach($carrito as $codlibro=> $cantidad){
$items=$items + $cantidad;
}
return $items;
}

function mostrar_carrito($carrito){
include("conexion.inc");
global $_SESSION;
echo "<center><h1>CARRITO DE COMPRAS</h1></center>";
echo "<table border=5 align=center >";
echo "<tr><td><B>Libro</B></td><td><B>Precio</B></td><td><B>Cantidad</B></td><td><B>Total</B></td></tr>";
?>
<html>
<?
foreach($carrito as $codlibro=>$cantidad){
$sql="select * from libro where libro_codigo='$codlibro' ";
$resultado=mysql_query($sql,$conexion);
$libro=mysql_fetch_array($resultado);
echo "<tr><td>".$libro["libro_titulo"]."</td>";
echo "<td>".$libro["libro_precio"]."</td>";
?>
// ------------------------------------------------------------------------<form name="form1" method="post" action="anadir_carrito.php">

<td><input type="text" name=cant value="<?php echo $cantidad; ?> "></td>;
<input type="hidden" name=codlibro value="<?php echo $codlibro ?>">

</form>
// ------------------------------------------------------------------------
<?
echo "<td>".$libro["libro_precio"]*$cantidad."</td>";
echo "<td><a href=anadir_carrito.php?codlibro=".$libro["libro_codigo"]."&eliminar=yes>";
echo "Eliminar</a></td></tr>";
}
?>
</html>
<?
echo "<tr><td></td><td></td>";
echo "<td>".$_SESSION['items']."</td><td>".$_SESSION['precio_total']."</td>";
echo "<td></td></tr></table>";
}
?>

Espero me puedas ayudar, saludos