Ver Mensaje Individual
  #1 (permalink)  
Antiguo 04/11/2009, 15:44
Avatar de jimadri
jimadri
 
Fecha de Ingreso: julio-2006
Ubicación: Buenos Aires
Mensajes: 487
Antigüedad: 17 años, 10 meses
Puntos: 1
Urgente ayuda con id

Estoy cargando un sitio en su server definitivo. El sitio es una tienda online en la que al estar registrado podran ir agregando cosas al carro.

El tema es el siguiente, probé crear un usuario, y navegué la web si nproblemas pero al intentar agregar un producto al carro me dice lo siguiente:

Código HTML:
Warning: Cannot modify header information - headers already sent by (output started at /home/rs000118/public_html/conexion.bd.sql.php:9) in /home/rs000118/public_html/agregacar.php on line 77
Mi archivo de conexion dice lo siguiente:

[PHP]<?php
//localhost
$host = "localhost";
$user = "MIUSUARIO";
$pass = "MICLAVE";
$bd = "rs000118_usuarios";
$conn = mysql_connect($host,$user,$pass) or die ("Error al establecer la conexion a la base de datos");
mysql_select_db($bd,$conn) or die("La base de datos seleccionada no existe en la base de la administracion");
?> /PHP]

y el archivo agregarcar.php dice:

Código PHP:
<?php 
session_start
();
if (isset(
$_SESSION["user"])){
if (
$_SESSION["user"] != ""){    
//error_reporting(E_ALL);
//@ini_set('display_errors', '1');
//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']; 
include('conexion.bd.sql.php');
//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 peliculas where id_peli='".$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,'titulo'=>$row['titulo'],'precio'=>$row['precio'],'id_peli'=>$id);

$carro[($id)]=array('identificador'=>($id),'cantidad'=>$cantidad,'titulo'=>$row['titulo'],'precio'=>$row['precio'],'id_peli'=>$id'sobre'=>'si');
//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;
$cantsobre 0;
$cantcaja 0;
foreach(
$carro as $k => $v)
    {
       if (
$v['sobre'] == "si")
               {
            
$cantsobre $cantsobre $v['cantidad'];
            }
        else
            {
            
$cantcaja $cantcaja $v['cantidad'];
            }  
    }
$_SESSION['sobrecant'] = $cantsobre;
$_SESSION['cajacant'] = $cantcaja;
    
/*
$cant = $carro[($id)]['cantidad'];
if (isset($_SESSION['sobrecant']))
    {
    $_SESSION['sobrecant'] = $_SESSION['sobrecant'] + $cant;
    }
else
    {
    $_SESSION['sobrecant'] = $cant;
    } */
//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.
}else{
    echo 
"<script language='javascript'>alert('Debe registrarse para realizar la operacion')</script>";
    echo 
"<script language='javascript'>location.href='index.php'</script>";
}
}else{
    echo 
"<script language='javascript'>alert('Debe registrarse para realizar la operacion')</script>";
    echo 
"<script language='javascript'>location.href='index.php'</script>";
}
header("Location:vercarrito.php?".SID);
?>
QUE HAGO!!!!

Gracias!!!