Foros del Web » Programando para Internet » PHP »

problemas con sesiones y cookies

Estas en el tema de problemas con sesiones y cookies en el foro de PHP en Foros del Web. Buenas tardes, estoy haciendo una web en la que utilizo sesiones y cookies y en local me funciona bien pero al instalarlo todo en mi ...
  #1 (permalink)  
Antiguo 13/01/2009, 10:55
 
Fecha de Ingreso: mayo-2005
Ubicación: Castellón
Mensajes: 321
Antigüedad: 18 años, 11 meses
Puntos: 0
Pregunta problemas con sesiones y cookies

Buenas tardes,

estoy haciendo una web en la que utilizo sesiones y cookies y en local me funciona bien pero al instalarlo todo en mi hosting de internet veo que no me reconoce las sesiones y que no me crea las cookies, he puesto lo de registrer globals a on y he mirado que lo de las cookies esté igual que en mi servidor local pero sigue sin funcionarme, alguien sabe porque???


Saludos y gracias
  #2 (permalink)  
Antiguo 13/01/2009, 11:06
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: problemas con sesiones y cookies

pues sin un ejemplo de como esta implementado, y como haces uso de estas variables...

¿¿como podemos adivinarlo???
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 13/01/2009, 13:27
 
Fecha de Ingreso: mayo-2005
Ubicación: Castellón
Mensajes: 321
Antigüedad: 18 años, 11 meses
Puntos: 0
Respuesta: problemas con sesiones y cookies

En index.php vinculo el archivo login.php donde compruebo si existe la cookie y si existe me copia sus valores en el nombre de usuario y en la contraseña:

login.php
Cita:
<?php
$loginCorrecto = false;
$idUsuarioL;
$nickUsuarioL;
$emailUsuarioL;
$nombreUsuarioL;

if(isset($HTTP_COOKIE_VARS["usNick"]) && isset($HTTP_COOKIE_VARS["usPass"]))
{

$result = mysql_query("SELECT * FROM usuarios WHERE usuario='".$HTTP_COOKIE_VARS["usNick"]."' AND contrasena='".$HTTP_COOKIE_VARS["usPass"]."'");

if($row = mysql_fetch_array($result))
{
setcookie("usNick",$HTTP_COOKIE_VARS["usNick"],time()+7776000);
setcookie("usPass",$HTTP_COOKIE_VARS["usPass"],time()+7776000);
$loginCorrecto = true;
$idUsuarioL = $row["id"];
$nickUsuarioL = $row["usuario"];
$nickpasswordL = $row["contrasena"];
$emailUsuarioL = $row["email"];
$nombreUsuarioL = $row["nombre"];
}
else
{

//Destruimos las cookies.
setcookie("usNick","x",time()-3600);
setcookie("usPass","x",time()-3600);
}
mysql_free_result($result);
}
else{

}
?>
Parte del index.php
Cita:
<body background="../../img/fondo.jpg">
<?
include "../librerias/lib.php";
conectabd();
include("../logout.php");
include("../login.php");
if($loginCorrecto){


?>
<div id="contenedor_registro">
<div id="cabecera">
<img src="../../img/cabecera.jpg" />
</div>
<div id="contenido_registro">
<div id="registro">
<div id="titulo_registro">
<span class="titulo_registro">registro de usuarios</span> </div>
<div id="fondo_registro">
<div id="titulo_nuevo" class="barra_dentro">
<span class="titulo_registro_dentro">Nuevo usuario</span>
</div>
<div id="texto_nuevo" class="texto">
Al crear una cuenta podrá insertar anuncios fácilmente. Resgístrese pinchando <a href="archivo_nuevo.php" target="_self">aquí</a>
</div>
<div id="titulo_yasoy" class="barra_dentro">
<span class="titulo_registro_dentro">Ya soy usuario</span>
</div>
<div id="texto_yasoy" class="texto">
<form name="form1" action="ingresar.php" method="post" enctype="multipart/form-data">
<table width="220" border="0">
<tr>
<td>usuario :</td>
<td><input type="text" name="usuario" id="usuario" size=22 maxlength=22 value="<? echo($nickUsuarioL);?>"></td>
</tr>
Dentro de aquí no me coge los valores de la cookie porque no la ha creado pero yo le pongo un usuario y una contraseña válidos y me lleva a la página ingresar.php para comprobar que esta todo ok y actualizarme la cookie.

ingresar.php
Cita:
<?php
include "../librerias/lib.php";
conectabd();
if(trim(addslashes($HTTP_POST_VARS["usuario"])) != "" && trim(addslashes($HTTP_POST_VARS["contrasena"])) != "")
{
$usuarioN = addslashes($_POST['usuario']);
$passN = addslashes($_POST['contrasena']);
$result = mysql_query("SELECT * FROM usuarios WHERE usuario='$usuarioN'");
if($row = mysql_fetch_array($result))
{
if(($row["contrasena"] == $passN)||($row["contrasena"] == md5($passN)))
{
if($row["activo"] == 1)
{
if($row["contrasena"] == md5($passN)){
$passN = md5($passN);
}else{

}
//90 dias dura la cookie
setcookie("usNick",$usuarioN,time()+7776000);
setcookie("usPass",$passN,time()+7776000);
//Ahora abrimos la sesion
session_start();
$_SESSION["id"]=$row["id"];
$_SESSION["nombre"]=$row["nombre"];
$_SESSION["email"]=$row["email"];
$_SESSION["telefono"]=$row["telefono"];
$_SESSION["usuario"]=$row["usuario"];
$_SESSION["contrasena"]=$row["contrasena"];
?>
<span class="texto">Ingreso exitoso, ahora sera dirigido a la pagina principal.</span>

<SCRIPT LANGUAGE="javascript">
location.href = "../articulos/index.php";
</SCRIPT>
<?
}
else{
?>
La cuenta no está activada.<br><br><a href="index.php" target="_self">volver</a>
<?
}

}
else
{
?>
Contraseña incorrecta.<br><br><a href="index.php" target="_self">volver</a>
<?
}
}
else
{
?>
Usuario no existente en la base de datos.<br><br><a href="index.php" target="_self">volver</a>
<?
}
mysql_free_result($result);
}
else
{
?>
Debe especificar un usuario y una contraseña.<br><br><a href="index.php" target="_self">volver</a>
<?
}
mysql_close();
?>
Aquí me comprueba que existe el usuario y la contraseña, me crea las variables de sesion y me redirige a la página index.php que está dentro de otro directorio. Pero dentro de aquí no me reconoce la sesion.

index.php
Cita:
<?
include "../librerias/lib.php";
conectabd();
session_start();
echo($_SESSION['usuario']);
if(isset($_SESSION['usuario']) && isset($_SESSION['contrasena']))
{
$result = mysql_query("SELECT * FROM usuarios WHERE usuario='".$_SESSION['usuario']."' AND contrasena='".$_SESSION['contrasena']."'");
if($row = mysql_fetch_array($result))
{
?>
.....
Como véis le pongo que me escriba el nombre de usuario y no me escribe nada... como he comentado tengo habilitadas las register_globals en mi servidor de internet y los parámetros de sesion son exactamente los mismos que tengo en mi servidor local, en donde todo esto me funciona de maravilla.

Espero vuestra ayuda.....

Saludos y gracias
  #4 (permalink)  
Antiguo 13/01/2009, 13:30
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: problemas con sesiones y cookies

en concreto, tienes muchos errores.... y register_globals es solo uno de ellos....

Código:
$HTTP_POST_VARS = $_POST
$HTTP_COOKIE_VARS = $_COOKIE
$HTTP_***_VARS = $_***
luego, procura usar las etiquetas de <?php completas!!!
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #5 (permalink)  
Antiguo 13/01/2009, 13:41
 
Fecha de Ingreso: mayo-2005
Ubicación: Castellón
Mensajes: 321
Antigüedad: 18 años, 11 meses
Puntos: 0
Respuesta: problemas con sesiones y cookies

Hola pateketrueke, gracias por contestar, acabo de cambiar estas etiquetas y sigue haciéndome lo mismo o sea nada, ni me crea la cookie ni me coge las variables de las sesiones....
  #6 (permalink)  
Antiguo 13/01/2009, 13:56
Avatar de argy  
Fecha de Ingreso: octubre-2007
Ubicación: Longitud 75º Latitud 18º Sur
Mensajes: 614
Antigüedad: 16 años, 5 meses
Puntos: 18
Respuesta: problemas con sesiones y cookies

porque combinas HTTP_POST_VARS con $_POST????
__________________
Software libre para un mundo libre.

Eventualmente en el foro.
  #7 (permalink)  
Antiguo 13/01/2009, 13:58
 
Fecha de Ingreso: mayo-2005
Ubicación: Castellón
Mensajes: 321
Antigüedad: 18 años, 11 meses
Puntos: 0
Respuesta: problemas con sesiones y cookies

ya lo he cambiado pero sigue sin funcionar
  #8 (permalink)  
Antiguo 13/01/2009, 14:00
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: problemas con sesiones y cookies

bueno, no queda otra que comparar los phpinfo() de local y servidor...

veamos...

de algún modo hay algún otro detalle, debes comparar esta paginas en especifico la configuración local y global del php.ini

anota las diferencias, y veamos que sucede...
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #9 (permalink)  
Antiguo 13/01/2009, 14:03
 
Fecha de Ingreso: mayo-2005
Ubicación: Castellón
Mensajes: 321
Antigüedad: 18 años, 11 meses
Puntos: 0
Respuesta: problemas con sesiones y cookies

OK, mañana te paso todas la diferencias que encuentre.

Muchas gracias por todo.

Saludos
  #10 (permalink)  
Antiguo 13/01/2009, 14:04
 
Fecha de Ingreso: mayo-2005
Ubicación: Castellón
Mensajes: 321
Antigüedad: 18 años, 11 meses
Puntos: 0
Respuesta: problemas con sesiones y cookies

Si quieres puedes ver el del servidor:

http://www.armasdesegundamano.com/phpinfo.php

saludos
  #11 (permalink)  
Antiguo 26/10/2009, 10:21
 
Fecha de Ingreso: octubre-2009
Ubicación: Manizales, Colombia
Mensajes: 5
Antigüedad: 14 años, 5 meses
Puntos: 1
Respuesta: problemas con sesiones y cookies

hola tyrula,

Cuentame... pudiste solucioar este error con el setcookie?

La verdad me serviria bastante, ya que ando en las mismas,

Gracias.
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 17:31.