Foros del Web » Programando para Internet » PHP »

no me reconoce la variable de session[0]['loquesea']

Estas en el tema de no me reconoce la variable de session[0]['loquesea'] en el foro de PHP en Foros del Web. Hola a todos, soy nuevo en este foro y quería consultarles un tema que me está dando dolor de cabeza. Estoy haciendo un pequeño carro ...
  #1 (permalink)  
Antiguo 04/10/2012, 03:45
Avatar de Inmortal666  
Fecha de Ingreso: octubre-2012
Mensajes: 19
Antigüedad: 12 años, 1 mes
Puntos: 0
no me reconoce la variable de session[0]['loquesea']

Hola a todos, soy nuevo en este foro y quería consultarles un tema que me está dando dolor de cabeza.

Estoy haciendo un pequeño carro de compra con sessiones, sin logearse ni pass, solo utilizo las sesiopnes para pasar los valores de los artículos de un lugar a otro, bueno todo me estaba funcionando bien cuando utilizaba las sesiones así:

$_SESSION['id'] = "aqui va un numero que va aumentando de 1 en 1";
$_SESSION['nombre'][$_SESSION['id']] = 'juan';
$_SESSION['cantidad'][$_SESSION['id']] = '200';
$_SESSION['regalo'][$_SESSION['id']] = '1';

Cuando leía la variable me daba como resultado juan, y si en ese momento actualizaba la página me seguia dando juan, 200, 1, hasta ahi todo bien, pero me di cuenta que lo estaba haciendo al revés puesto que en la variable nombre iba a tener todos los nombres y lo logico es que tenga en una variable todos los datos de una sola persona, entonces lo así:

$_SESSION['id'] = "aqui va un numero que va aumentando de 1 en 1";
$_SESSION[$_SESSION['id']]['nombre'] = 'juan';
$_SESSION[$_SESSION['id']]['cantidad'] = '200';
$_SESSION[$_SESSION['id']]['regalo'] = '1';

Ahora si tengo todo agrupado en un solo array, pero aqui viene el problema, que cuando quiero crear mi tabla con los resultados me dice:
Notice: Undefined offset: 0

He revisado todo el código de arriba a abajo y no encuentro nada mal, pero lo que si me ha sacado de mi lógica es que, cuando agrego los valores al array y en ese momento lo leo con variables dentro me funciona, pero si coloco un número dentro no, aqui agrego valores:

$_SESSION[$_SESSION['id_art']] = array(
'embolsado' => $embol,
'item' => $_SESSION['id_art']+1,
'cantidad' => $_POST['cantidad'],
'nombre' => $_POST['articulo'],
'precio' => $_POST['precio']
);

ahora los leo:
echo $_SESSION['id_art'];
echo $_SESSION[$_SESSION['id_art']]['embolsado'];
echo $_SESSION[$_SESSION['id_art']]['item'];
echo $_SESSION[$_SESSION['id_art']]['cantidad'];
echo $_SESSION[$_SESSION['id_art']]['nombre'];
echo $_SESSION[$_SESSION['id_art']]['precio'];

y todo me funciona, pero si hago esto:
echo $_SESSION[0]['embolsado'];
echo $_SESSION[0]['item'];
echo $_SESSION[0]['cantidad'];
echo $_SESSION[0]['nombre'];
echo $_SESSION[0]['precio'];

me da el mismo error: Notice: Undefined offset: 0

y cuando voy al archivo mi_carrito , que es donde creo mi tabla, me dice lo mismo:
for($i=0; $i < $_SESSION['id_art']; $i++){
echo "<tr>";
echo "<td>";
echo $_SESSION[$i]['item'];
echo "</td>";
echo "<td>";
echo $_SESSION[$i]['nombre'];
echo "</td>";
echo "<td>";
if($_SESSION[$i]['embolsado'] == 1)
$resp = "SI";
else
$resp = "NO";
echo $resp;
echo "</td>";
echo "<td>";
echo $_SESSION[$i]['cantidad'];
echo "</td>";
echo "<td>";
echo $_SESSION[$i]['precio'];
echo "</td>";
echo "<td>";
echo '<a href="eliminar.php?id=' .$i. '">Eliminar</a>';
echo "</td>";
echo "</tr>";
}

en todas las líneas donde estan las variables de session me da el mismo error, ¿porque??????, me estoy volviendo loco jejejeje, a ver si alguien me puede ayudar por favor, saludos
  #2 (permalink)  
Antiguo 04/10/2012, 04:05
Avatar de Naahuel  
Fecha de Ingreso: marzo-2011
Ubicación: localhost
Mensajes: 796
Antigüedad: 13 años, 8 meses
Puntos: 192
Respuesta: no me reconoce la variable de session[0]['loquesea']

El nivel de ese error es sólo un notice, el código debería funcionar igual. Lo que te está diciendo es que estás usando el valor 0 del array, cuando no existe. Yo creo que el problema está en la asignación:

Código PHP:
Ver original
  1. $_SESSION['id'] = "aqui va un numero que va aumentando de 1 en 1";

Asegurate que ese ID arranque de 0. Me parece que acá tenés la falla, puede que esté arrancando de 1.
__________________
nahueljose.com.ar
  #3 (permalink)  
Antiguo 04/10/2012, 04:05
 
Fecha de Ingreso: abril-2012
Mensajes: 590
Antigüedad: 12 años, 7 meses
Puntos: 58
Respuesta: no me reconoce la variable de session[0]['loquesea']

Es que estás metiendo un array dentro de un array y ademas ambos con SESSION no se si eso vale. Si quieres meter los datos de la sesión en un array mejor hazlo así:

$_SESSION['usuario']['nombre'] = 'pepe';
$_SESSION['usuario']['apellidos'] = 'viruela';

etc.

y luego
echo $_SESSION['usuario']['nombre'];

No lo probé pero creo que así estaría bien.
  #4 (permalink)  
Antiguo 04/10/2012, 04:13
Avatar de Inmortal666  
Fecha de Ingreso: octubre-2012
Mensajes: 19
Antigüedad: 12 años, 1 mes
Puntos: 0
Respuesta: no me reconoce la variable de session[0]['loquesea']

Gracias por sus prontas respuestas, lo de la variable que aumenta de 1 en 1, lo he comprobado que empieza en 1, es más tengo un archivo de nombre agregar, que es en donde le doy valores al array y el id empieza en cero, verificándolo directamente desde pantalla, pero cuando pasa a la otra página que es mi_carrito, en dodne armo la tabla con los datos del array, ahi es dodne me salta el error, y antes cuando lo hacía al revés si funcionaba
  #5 (permalink)  
Antiguo 04/10/2012, 04:17
Avatar de Naahuel  
Fecha de Ingreso: marzo-2011
Ubicación: localhost
Mensajes: 796
Antigüedad: 13 años, 8 meses
Puntos: 192
Respuesta: no me reconoce la variable de session[0]['loquesea']

Cita:
Iniciado por Inmortal666 Ver Mensaje
lo de la variable que aumenta de 1 en 1, lo he comprobado que empieza en 1
Pero tiene que iniciar en 0, ese es el índice que te dicen que no existe. No entiendo tu respuesta.

De todas formas, quien tiene razón es alyciashape.
$_SESSION['id'] puede que sea un array, dado que ahora tu $_SESSION es bidimensional.
__________________
nahueljose.com.ar
  #6 (permalink)  
Antiguo 04/10/2012, 04:18
Avatar de Inmortal666  
Fecha de Ingreso: octubre-2012
Mensajes: 19
Antigüedad: 12 años, 1 mes
Puntos: 0
Respuesta: no me reconoce la variable de session[0]['loquesea']

Lo sigo revisando y es como si se perdieran los datos al pasar de una página a otra, porque agrego un solo artículo y manualmente intento leer 5 posiciones, y en todas me dice que no está definida, la verdad ya no se que más hacer....
  #7 (permalink)  
Antiguo 04/10/2012, 04:20
Avatar de Inmortal666  
Fecha de Ingreso: octubre-2012
Mensajes: 19
Antigüedad: 12 años, 1 mes
Puntos: 0
Respuesta: no me reconoce la variable de session[0]['loquesea']

y si es como dice alyciashape, ¿cual sería la solución?
  #8 (permalink)  
Antiguo 04/10/2012, 04:24
Avatar de Inmortal666  
Fecha de Ingreso: octubre-2012
Mensajes: 19
Antigüedad: 12 años, 1 mes
Puntos: 0
Respuesta: no me reconoce la variable de session[0]['loquesea']

mejor voy a hacer una cosa, les mando los códigos y lo revisan.

el orden en que van los archivos es:
productos.php
agregar.php
mi_carrito.php
ventana_carro.php (esta está incluida en productos.php)
  #9 (permalink)  
Antiguo 04/10/2012, 04:26
Avatar de Inmortal666  
Fecha de Ingreso: octubre-2012
Mensajes: 19
Antigüedad: 12 años, 1 mes
Puntos: 0
Respuesta: no me reconoce la variable de session[0]['loquesea']

productos.php
Código PHP:
include ("ventana_carro.php");
echo
    
"<html>
        <h1>PRODUCTOS</h1>
    <body>
        <table border = 2>
            <tr>
                <td>
                    <a href='otromas.php?producto=pulsera'><img src='http://regalosjc.com/images/Pulsera 07.jpg'></a>
                </td>
                <td>
                    <a href='otromas.php?producto=portaretrato'><img src='http://regalosjc.com/images/Portretra 08.png'></a>
                </td>
            </tr>
            <tr>
                <td>
                    <a href='otromas.php?producto=portagafas'><img src='http://regalosjc.com/images/portgafas 10.png'></a>
                </td>
                <td>
                    <a href='otromas.php?producto=pendiente'><img src='http://regalosjc.com/images/Pendiente 01.jpg'></a>
                <td>
            </tr>
        </table>
    </body>
    </html>"




agregar.php
Código PHP:
session_start();

if (!isset(
$_POST["embolsado"]))
            
$embol 0;
else
    
$embol $_POST["embolsado"];
    
for(
$i=0$i<=$_SESSION['id_art']; $i++)
    if(
$i == $_SESSION['id_art']){
        
$_SESSION[$i] = array(
                                    
'embolsado' => $embol,
                                    
'item' => $_SESSION['id_art']+1,
                                    
'cantidad' => $_POST['cantidad'],
                                    
'nombre' => $_POST['articulo'],
                                    
'precio' => $_POST['precio']
                                    );
    }

//echo $_SESSION[$_SESSION['id_art']]['nombre'];
    
    
$_SESSION['id_art']++;

header("Location:productos.php?".SID); 


mi_carrito.php
Código PHP:
session_start();

if(
$_SESSION['id_art'] > 0){
$subtotal 0;
$iva 0;
$total 0;

echo 
"<table border = 2>
        <tr>
            <td>ITEM</td>
            <td>Nombre Artículo</td>
            <td>Embolsado Individual</td>
            <td>Cantidad (und)</td>
            <td>Precio (sin IVA)</td>
            <td>Eliminar</td>
        </tr>"
;
            for(
$i=(5); $i >= 0$i--){
echo        
"<tr>";
echo            
"<td>";
echo                    
$_SESSION[$i]['item'];
echo                                            
"</td>";
echo            
"<td>"
echo                    
$_SESSION[$i]['nombre']; 
echo                                                
"</td>";
echo            
"<td>"
                        if(
$_SESSION[$i]['embolsado'] == 1)
                            
$resp "SI";
                        else
                            
$resp "NO";
                        echo 
$resp;    
echo                                    
"</td>";
echo            
"<td>"
echo                    
$_SESSION[$i]['cantidad']; 
echo                                                
"</td>";
echo            
"<td>"
echo                    
$_SESSION[$i]['precio']; 
echo                                            
"</td>";
echo            
"<td>";
echo                
'<a href="eliminar.php?id=' .$i'">Eliminar</a>';
echo                                                                                
"</td>";
echo            
"</tr>";
            }
echo        
"<tr>
                <td> Sub-Total </td>
                <td>"
;
                    for(
$i=0$i$_SESSION['id_art']; $i++)
                        
$subtotal += $_SESSION[$i]['precio'];
                    echo 
$subtotal;
echo                                                        
"</td>";
echo        
"</tr>
            <tr>
                <td> IVA 21% </td>
                <td>"
;
                    
$iva $subtotal 0.21;
                    echo 
$iva;
echo                                        
"</td>";
echo        
"</tr>
            <tr>
                <td> Total a Pagar </td>
                <td>"

echo                
$total $iva $subtotal
echo                                        
"</td>
            </tr>            
        </table>"
;
        


echo 
"<br><a href = 'productos.php'>Seguir Comprando</a>";

echo 
"<br><a href = 'realizar_pedido.php'>Confirmar Pedido</a>";

}
else{
    echo 
"<script language = 'javascript'>alert('No tiene artículos agregados en su Pedido')</script>";
    echo 
"<script language = 'javascript'>window.history.go(-1)</script>";
    
    


ventana_carro.php
Código PHP:
session_start();

if (!isset(
$_SESSION['id_art']))
    
$_SESSION['id_art'] = 0;

    
echo 
"<img src='http://regalosjc.com/liquidacion/images/carrito.png'><br>";

echo 
"Artículos: ".$_SESSION['id_art'];
echo 
"<br><a href='mi_carrito.php'>Ver Carrito</a>"
Le estoy dando tantas vueltas que me estoy mareando jejejeje, saludos
  #10 (permalink)  
Antiguo 04/10/2012, 04:28
Avatar de Inmortal666  
Fecha de Ingreso: octubre-2012
Mensajes: 19
Antigüedad: 12 años, 1 mes
Puntos: 0
Respuesta: no me reconoce la variable de session[0]['loquesea']

me olvidé del principal donde hace las operaciones, estoy tan cabezón, lo siento:

otromas.php
Código PHP:
<?php
include ("ventana_carro.php");

?>
<html>
<body>
<style type="text/css">

.caja-texto{
font-family: arial;
font-weight: bold;
font-size: 15px;
color: #00265D;

}
.caja-valor{
font-family: arial;
font-weight: bold;
font-size: 16px;
color: #6699FF;
position: absolute;
text-align: right;


}
</style>


<?php
if(isset($_GET['producto']))
    
$_SESSION['prod'] = $_GET['producto'];
    
function 
revisar_cantidad(){
        
    global 
$cantidad;
    global 
$embolsado;
    global 
$valor;
    global 
$unidad;
    global 
$total;
    
    
    if (!isset(
$_SESSION['id_art']))
        
$_SESSION['id_art'] = 0;
    
    if (!isset(
$_SESSION[$_SESSION['id_art']]))
        
$_SESSION[$_SESSION['id_art']] = array();
    
            
    if(
$cantidad >= 100){
        if(
$cantidad 300)
            
$unidad 1;   //Precio por unidad
        
elseif($cantidad >= 300 && $cantidad 500){
            
$unidad 0.95;}
        elseif(
$cantidad >= 500 && $cantidad 1000){
            
$unidad 0.90;}
        else
            
$unidad 0.85;
        
        
$parcial $unidad;  //Valor parcial del articulo
        
        
if($embolsado == 1){
            
$valor 0.10;  //Precio del embolsado individual
            
$parcial += $valor;
        }
        
$total $parcial $cantidad;  //Precio total del articulo
        
        
return true;
    }
    elseif(
$cantidad && $cantidad 100){
        echo 
"<script language='javascript'>alert('La cantidad mínima tiene que ser de 100 UND')</script>";
    }
    return 
false;
}

echo 
"<form action= 'otromas.php' method='POST' name='formulario' id='formulario'>";
    
if (!isset (
$_POST['cantidad']))
    
$cantidad 0;   //Eleccion del embolsado
else
    
$cantidad $_POST["cantidad"];

if (!isset(
$_POST['embolsado']))
    
$embolsado 0;   //Eleccion del embolsado
else
    
$embolsado $_POST['embolsado'];

$opc revisar_cantidad(); //Variable para saber si se a hecho pedido
        
echo 
    
"<p class = 'caja-texto'>Calcule el precio de su artículo<br>
    Cantidad: "
."<input type=text name =cantidad size=3 maxlength = 4  value = $cantidad  onkeypress='return ValidNum(event);'><br>";
    
if(
$embolsado == 1)
    echo 
"Embolsado Individual (+0,10): <input type = checkbox name = embolsado value = 1 checked = true><br><br>";
else
    echo 
"Embolsado Individual (+0,10): "."<input type = checkbox name = embolsado value = 1><br><br>";
        
echo 
"<input type ='submit' value ='CALCULAR'></p>";
    
    echo 
"<input type = text name = precio value = '$total' style = visibility:hidden>";
    echo 
"<input type = text name = articulo value = '$_SESSION[prod]' style = visibility:hidden>";

if(
$opc != false){
    
        echo 
            
"<p class = 'caja-texto'>Precio de la Unidad:<br>";
        
printf ("<font size='5'>%.2f €<br></font>",$unidad);
        if(
$valor>0){
            echo 
"Embolsado individual:<br>";
            
printf ("<font size='5'>%.2f €<br></font>",$valor);
        }
        echo 
"Precio Total (sin IVA):<br>";
        
printf ("<font size='6'>%.2f €<br><br></font>",$total);
        
$comparar 0;
        for (
$i=0$i < ($_SESSION['id_art']); $i++)
            if(
$_SESSION[$i]["nombre"] == $_POST['articulo'])
                
$comparar 1;
        if(
$comparar == 0)
            echo 
"<input type = 'button' name='agregar' value='Añadir a mi Pedido' onClick='validar1()'><br>";
        else
            echo 
"<input type = 'button' name='agregar' value='Artículo añadido' disabled = true><br>";
}

echo 
"</form>";

?>


<!-- Esta función hace que en el Input text solo se puedan ingresar números   -->
<script language="javascript">
function ValidNum(e) {
    var tecla= document.all ? tecla = e.keyCode : tecla = e.which;
    return ((tecla > 47 && tecla < 58) || tecla == 8);
}



function validar1(){
    formulario.agregar.disabled=true;
    
    document.formulario.action = "agregar.php";
    document.formulario.method = "POST";
    document.formulario.submit();

}


</script>



</body>
</html>
  #11 (permalink)  
Antiguo 04/10/2012, 04:35
Avatar de Naahuel  
Fecha de Ingreso: marzo-2011
Ubicación: localhost
Mensajes: 796
Antigüedad: 13 años, 8 meses
Puntos: 192
Respuesta: no me reconoce la variable de session[0]['loquesea']

Hombre, no me voy a poner a copiar y ejecutar todo ese código :P

Haciendo pruebas, encontré que esto es válido:
Código PHP:
Ver original
  1. $_SESSION['id'] = 0;
  2. $_SESSION[$_SESSION['id']]['nombre'] = 'Nombre';
  3. $_SESSION[$_SESSION['id']]['cantidad'] = 'Cantidad';
  4. $_SESSION[$_SESSION['id']]['precio'] = 'Precio';
  5.  
  6. $_SESSION['id'] = 1;
  7. $_SESSION[$_SESSION['id']]['nombre'] = 'Otro Nombre';
  8. $_SESSION[$_SESSION['id']]['cantidad'] = 'Otra Cantidad';
  9. $_SESSION[$_SESSION['id']]['precio'] = 'Otro Precio';

Lo cual tira:
Código:
array
  'id' => int 1
  0 => 
    array
      'nombre' => string 'Nombre' (length=6)
      'cantidad' => string 'Cantidad' (length=8)
      'precio' => string 'Precio' (length=6)
  1 => 
    array
      'nombre' => string 'Otro Nombre' (length=11)
      'cantidad' => string 'Otra Cantidad' (length=13)
      'precio' => string 'Otro Precio' (length=11)
Tu problema es que no estás creando el índice 0 de $_SESSION. Fijate bien qué línea y qué archivo te dice, empecemos por ahí.
__________________
nahueljose.com.ar
  #12 (permalink)  
Antiguo 04/10/2012, 04:41
 
Fecha de Ingreso: abril-2012
Mensajes: 590
Antigüedad: 12 años, 7 meses
Puntos: 58
Respuesta: no me reconoce la variable de session[0]['loquesea']

Es que tal como declaras los datos
$_SESSION[$_SESSION['id_art']]['precio'];

Es que estás metiendo un array de variable de session en una variable de session así que no puedes acceder directamente con echo $_SESSION[0]['precio'];

Y es que además está mal declarado porque estás haciendo esto:

$_SESSION [$_SESSION ['id_art'] ] ['precio'];

Y yo no le veo el sentido. Igual me equivoco. Con lo fácil que sería de la forma que te comenté.


Para mi sería más logico:
$_SESSION['id_art']['precio'];

y mucho más fácil
  #13 (permalink)  
Antiguo 04/10/2012, 04:43
Avatar de Inmortal666  
Fecha de Ingreso: octubre-2012
Mensajes: 19
Antigüedad: 12 años, 1 mes
Puntos: 0
Respuesta: no me reconoce la variable de session[0]['loquesea']

El indice empieza en 0 en el archivo otromas.php, aqui:

Código PHP:
<?php
if(isset($_GET['producto']))
    
$_SESSION['prod'] = $_GET['producto'];
    
function 
revisar_cantidad(){
        
    global 
$cantidad;
    global 
$embolsado;
    global 
$valor;
    global 
$unidad;
    global 
$total;
    
    
    if (!isset(
$_SESSION['id_art']))
        
$_SESSION['id_art'] = 0;
    
    if (!isset(
$_SESSION[$_SESSION['id_art']]))
        
$_SESSION[$_SESSION['id_art']] = array();

luego cuando el cliente acepta el artículo lo que hace es irse al archivo agregar.php y le inserta los valores al array, aqui:

Código PHP:
<?php
session_start
();

if (!isset(
$_POST["embolsado"]))
            
$embol 0;
else
    
$embol $_POST["embolsado"];
    
for(
$i=0$i<=$_SESSION['id_art']; $i++)
    if(
$i == $_SESSION['id_art']){
        
$_SESSION[$i] = array(
                                    
'embolsado' => $embol,
                                    
'item' => $_SESSION['id_art']+1,
                                    
'cantidad' => $_POST['cantidad'],
                                    
'nombre' => $_POST['articulo'],
                                    
'precio' => $_POST['precio']
                                    );
    }

echo 
$_SESSION[$_SESSION['id_art']]['nombre']; //aqui compruebo que hasta
//este momento el array tiene su valor correcto en el índice correcto
    
    
$_SESSION['id_art']++;

header("Location:productos.php?".SID);

?>

Pero cuando quiero imprimir en pantalla con mi_carrito.php ahi es donde viene el problema, que no encuentra nada en el índice, aqui:

Código PHP:
for($i=0$i $_SESSION['id_art']; $i++){
echo        
"<tr>";
echo            
"<td>";
echo                    
$_SESSION[$i]['item'];
echo                                            
"</td>";
echo            
"<td>"
echo                    
$_SESSION[$i]['nombre']; 
echo                                                
"</td>";
echo            
"<td>"
                        if(
$_SESSION[$i]['embolsado'] == 1)
                            
$resp "SI";
                        else
                            
$resp "NO";
                        echo 
$resp;    
echo                                    
"</td>";
echo            
"<td>"
echo                    
$_SESSION[$i]['cantidad']; 
echo                                                
"</td>";
echo            
"<td>"
echo                    
$_SESSION[$i]['precio']; 
echo                                            
"</td>";
echo            
"<td>";
echo                
'<a href="eliminar.php?id=' .$i'">Eliminar</a>';
echo                                                                                
"</td>";
echo            
"</tr>";
            } 
Sé que es mucho código pero te lo he intentado resumir en esta respuesta, saludos
  #14 (permalink)  
Antiguo 04/10/2012, 04:45
 
Fecha de Ingreso: abril-2012
Mensajes: 590
Antigüedad: 12 años, 7 meses
Puntos: 58
Respuesta: no me reconoce la variable de session[0]['loquesea']

Esta línea tampoco la entiendo bien:
if (!isset($_SESSION[$_SESSION['id_art']]))
$_SESSION[$_SESSION['id_art']] = array();

Si no existe la session del registro 0 con un session con un registro id_art. Es demasiado rebuscado
  #15 (permalink)  
Antiguo 04/10/2012, 04:54
Avatar de Inmortal666  
Fecha de Ingreso: octubre-2012
Mensajes: 19
Antigüedad: 12 años, 1 mes
Puntos: 0
Respuesta: no me reconoce la variable de session[0]['loquesea']

Gracias por tus repsuestas alyciashape, sé que es demasiado rebuscado, pero es que si no pongo ese código, más abajo tengo que comparar esa variable con un valor, aqui:

Código PHP:
if($opc != false){
    
        echo 
            
"<p class = 'caja-texto'>Precio de la Unidad:<br>";
        
printf ("<font size='5'>%.2f €<br></font>",$unidad);
        if(
$valor>0){
            echo 
"Embolsado individual:<br>";
            
printf ("<font size='5'>%.2f €<br></font>",$valor);
        }
        echo 
"Precio Total (sin IVA):<br>";
        
printf ("<font size='6'>%.2f €<br><br></font>",$total);
        
$comparar 0;
        
                for (
$i=0$i < ($_SESSION['id_art']); $i++)
            if(
$_SESSION[$i]["nombre"] == $_POST['articulo'])
                
$comparar 1;
                
//la comparación de arriba la hace para que el producto agregado
                //no se repita en su compra, si ya está en su carrito no puede volverlo
                //a agregar, y es por eso que necesito la comprobación inicial
        
if($comparar == 0)
            echo 
"<input type = 'button' name='agregar' value='Añadir a mi Pedido' onClick='validar1()'><br>";
        else
            echo 
"<input type = 'button' name='agregar' value='Artículo añadido' disabled = true><br>";


También intenté hacer la opción que me das, de poner:
$SESSION['id_art']['nombre'] = valor, y está en agregar.php, solo que en vez dehacer así lo hago con un for, aqui:

Código PHP:
for($i=0$i<=$_SESSION['id_art']; $i++)
    if(
$i == $_SESSION['id_art']){
        
$_SESSION[$i] = array(
                                    
'embolsado' => $embol,
                                    
'item' => $_SESSION['id_art']+1,
                                    
'cantidad' => $_POST['cantidad'],
                                    
'nombre' => $_POST['articulo'],
                                    
'precio' => $_POST['precio']
                                    );
    } 
Pero me pasa lo mismo cuando llego a querer ver los productos en mi_carrito.php
  #16 (permalink)  
Antiguo 04/10/2012, 05:21
 
Fecha de Ingreso: abril-2012
Mensajes: 590
Antigüedad: 12 años, 7 meses
Puntos: 58
Respuesta: no me reconoce la variable de session[0]['loquesea']

Oye, en el fichero donde incluyes ventana_carro no veo el session_start por ningún lado.
No se si es que se te ha pasado o no lo has copiado todo
  #17 (permalink)  
Antiguo 04/10/2012, 05:23
Avatar de Inmortal666  
Fecha de Ingreso: octubre-2012
Mensajes: 19
Antigüedad: 12 años, 1 mes
Puntos: 0
Respuesta: no me reconoce la variable de session[0]['loquesea']

No, no está puesto porque en la página ventana_carro.php ya está el session_start(); y si lo vuelvo a colocar en el archivo donde incluyo esa página, me da error por estar iniciando 2 veces session_start();
  #18 (permalink)  
Antiguo 04/10/2012, 05:34
Avatar de Inmortal666  
Fecha de Ingreso: octubre-2012
Mensajes: 19
Antigüedad: 12 años, 1 mes
Puntos: 0
Respuesta: no me reconoce la variable de session[0]['loquesea']

Gracias alyciashape porque veo que te estas metiendo de lleno con mi problema, y ya somos 2 los que estamos con la cabeza dando vueltas jejejeje, espero a ver si encuentras la solución a esto "tan raro" a mi parecer, saludos
  #19 (permalink)  
Antiguo 04/10/2012, 06:49
Avatar de Inmortal666  
Fecha de Ingreso: octubre-2012
Mensajes: 19
Antigüedad: 12 años, 1 mes
Puntos: 0
Respuesta: no me reconoce la variable de session[0]['loquesea']

No hay nadie más que me pueda hechar un cable????, por favorrrrrr

Etiquetas: reconoce, tabla, variables
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 22:29.