Foros del Web » Programando para Internet » PHP »

session_id() se comporta de forma extraña

Estas en el tema de session_id() se comporta de forma extraña en el foro de PHP en Foros del Web. Hola amigos: Tengo una base de datos e intento asociar unos artículos a una id de sesión de esta forma: Código PHP: $id_user  =  session_id ...
  #1 (permalink)  
Antiguo 20/12/2012, 09:06
 
Fecha de Ingreso: agosto-2008
Ubicación: Canarias, España - París, Francia
Mensajes: 105
Antigüedad: 15 años, 8 meses
Puntos: 3
session_id() se comporta de forma extraña

Hola amigos:

Tengo una base de datos e intento asociar unos artículos a una id de sesión de esta forma:
Código PHP:
$id_user session_id();

if(empty(
$id_user))
{   
session_start();
}
 
$id_user session_id();

utf8_encode($id_user);

if(!empty(
$_GET['id'])){
    
$id $_GET['id'];
}

$ip $_SERVER['REMOTE_ADDR'];
// Seleccionar de los componentes
        
$sql mysql_query("SELECT * FROM componentes WHERE id_comp = '$id' "); 



while(
$res mysql_fetch_array($sql))
  {

  
$descripcion $res['descripcion'];
  
$pvp $res['pvp'];
    
  }

// Consultar presupuesto a ver si existe ese id de componente

$sql2 mysql_query("SELECT * FROM presupuesto 
                        WHERE id = '$id'
                        
                        "
);

$n mysql_num_rows($sql2);
 
            while(
$c mysql_fetch_array($sql2))
            { 
                
$cantidad $c['cantidad'];
                
$id_session $c['id_session']; 
                
$id_comp $c['id'];
            }

if(!empty(
$id_session)){$id_session $id_session;}else{$id_session="";}


// Si no existe el id_comp, de ese usuario, lo insertamos  
 
  
if($n && !empty($_GET['id']))
    {
      echo 
"INSERTANDO. ID: ".$id_user."<br />"
      
      
      
$cantidad 1;
     
      
$sql mysql_query("INSERT INTO 
      presupuesto
      (id,producto,pvp,cantidad,id_session)
      VALUES
      ('$id','$descripcion','$pvp','$cantidad','$id_user')"
);
      
      echo 
"ID_USER: ".$id_user;

    } 
Pues bien, aunque la variable $id_user se supone que almacena el id de usuario, pues lo saco por pantalla y me devuelve esto:
INSERTANDO. ID: 02ec965e73cd4562b40e367b9598f990

En el campo id_session (que está en una base de datos mysql) me inserta:
02ec965e73cd4562b40e367b95

Alguien sabe como puedo solucionar este extraño comportamiento y a que es debido. Muchas gracias y feliz "fin del Mundo "
  #2 (permalink)  
Antiguo 20/12/2012, 09:29
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Respuesta: session_id() se comporta de forma extraña

¿Qué tipo de campo es id?
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #3 (permalink)  
Antiguo 20/12/2012, 09:35
Avatar de CoriaWeb  
Fecha de Ingreso: septiembre-2012
Ubicación: Coria del Río - Sevilla
Mensajes: 1.795
Antigüedad: 11 años, 7 meses
Puntos: 130
Respuesta: session_id() se comporta de forma extraña

Que longitud le tienes dado al campo en la bd? cuento.. creo que 27 :P yel primero creo que es 31 :P revisa si tienes bastante longitud asignado al campo
__________________
Hosting de Calidad
Servidores Dedicados Administrados
CoriaWeb.hosting
  #4 (permalink)  
Antiguo 21/12/2012, 18:36
 
Fecha de Ingreso: agosto-2008
Ubicación: Canarias, España - París, Francia
Mensajes: 105
Antigüedad: 15 años, 8 meses
Puntos: 3
Respuesta: session_id() se comporta de forma extraña

Cita:
Iniciado por CoriaWeb Ver Mensaje
Que longitud le tienes dado al campo en la bd? cuento.. creo que 27 :P yel primero creo que es 31 :P revisa si tienes bastante longitud asignado al campo
Muchas gracias amigacho!!! me has salvado de la locura esquizofrénica . Tienes razón, el campo lo había hecho varchar(26) pues en un var_dump me indicaba que la cadena tenía esa longitud... jajajaja.

Ya funciona!!

Etiquetas: session
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 01:23.