Saludos, tengo un problema, estoy haciendo un carrito de compra (muy rustico) en php que esta "semi funcional" (crea archivos con el nombre del usuario de la sesion con el pedido).
El problema es que cuando clickeo 2 (o mas) veces en UN articulo (del listado) en el carrito.php en lugar de incrementar la cantidad de dicho articulo, lo que hace es ponerlo 2 veces (dentro de una tabla html)... tengo el codigo pero no se como solucionar ese error.
Les dejo el codigo php que tengo, por ahi me pueden ayudar:
<?Php
if ($_POST['cambio'] == "Modificar")
{
$p = 0;
$g = 0;
$ver = file($_SESSION['cliente']);
$m = count($ver);
$c = $_POST['cantidad'];
$valor = $_POST['n'];
while ($p < $m)
{
$sep = explode(";", $ver[$p]);
if ($c[$p] <> 0)
{
$pedido[$g] = $sep[0] . ";" . $sep[1] . ";" . $sep[2] . ";" . $sep[3] . ";" . $sep[4] . ";" . $c[$p];
$g = $g + 1;
}
$p = $p + 1;
}
$h = 0;
unlink($_SESSION['cliente']);
$fp = fopen($_SESSION['cliente'], "a");
while ($h < $g)
{
fputs($fp, $pedido[$h]);
fputs($fp, chr(13) . chr(10));
$h = $h + 1;
}
fclose($fp);
}
$servidor = "localhost";
$usuario_bd = "root";
$password_bd = "admin";
$basedatos = "carrete";
$conexion = mysql_connect($servidor, $usuario_bd, $password_bd);
if (!$conexion)
{
echo "Error conectando a la base de datos.";
exit();
}
$resultado = mysql_select_db($basedatos, $conexion);
if (!$resultado)
{
echo "Error seleccionando la base de datos.";
exit();
}
$dato = $_POST['nro'];
if ($dato[0] <> "")
{
$sql = "select * from libros where Nro_catalogo='$dato[0]'";
$res = mysql_query($sql);
$archivo = $_SESSION['cliente'];
$fp = fopen($archivo, "a");
while ($row = mysql_fetch_array($res))
{
$nro = $row['Nro_catalogo'];
$titulo = $row['Titulo'];
$autor = $row['Autor'];
$genero = $row['Genero'];
$precio = $row['Precio'];
$cantidad = 1;
}
$pedido = $nro . ";" . $titulo . ";" . $autor . ";" . $genero . ";" . $precio . ";" . $cantidad;
if ($_SESSION['cliente']<>"")
{
fputs($fp, $pedido);
fputs($fp, chr(13) . chr(10));
fclose($fp);
}
}
if (file_exists($_SESSION['cliente']))
{
$ver = file($_SESSION['cliente']);
$totales = 0;
$j = 0;
$m = count($ver);
while ($j < $m)
{
$sep = explode(";", $ver[$j]);
$nr[$j] = $sep[0];
$tit[$j] = $sep[1];
$aut[$j] = $sep[2];
$gen[$j] = $sep[3];
$prec[$j] = $sep[4];
$can[$j] = $sep[5];
$totales = $totales + $prec[$j] * $can[$j];
$j = $j + 1;
}
}
?>
Ese es el codigo php del carrito (sin el session_start), si necesitan la pagina completa puedo subirla!
Muchisimas gracias!