Programación Web y Scripting > PHP
$_SESSION["login"]='Object'
(1/1)
diego.martinez:
Buenas:
Tengo una pagina web que funciona correctamente en localhost y en un php 4.3.9
ahora, lo subo a un php 4.4 y me da un problema raro:
Cuando logueo, guardo el Login introducido (y verificado) en una session $_SESSION["login"];
cuando vuelvo del formulario, las session es valida y tiene el login por ejemplo $_SESSION["login"]="Diego";
pero, en cuanto salto otra pagina, la session se convierte en $_SESSION["login"]="Object";
os pongo el codigo del login:
--- Código: Text --- $s=""; $user_login=""; $user_pass=""; //----- aqui recibo el resultado del formulario if (isset($_REQUEST["user_login"]) && isset($_REQUEST["user_pass"])) //acaba de llegar el post { $_SESSION["login"]=$_REQUEST["user_login"]; $_SESSION["pass"]=$_REQUEST["user_pass"]; } ///------------------- si se marca el ?link=logoff deslogueo if (isset($_GET["link"])) if ($_GET["link"]=="logoff") { unset($_SESSION["login"]); unset($_SESSION["pass"]); unset($_SESSION["id_user"]); } //----------------- compruebo que la session es un usuario valido//esta parte funciona la primera vez, la siguiente no por que $_SESSION["login"]="object" if (isset($_SESSION["login"]) && isset($_SESSION["pass"])) { $q="select * from user_fd where Login="".$_SESSION["login"]."" and Password="".$_SESSION["pass"]."""; $this->Conn->Query($q,"log"); if ($this->Conn->GetNumRows("log")==0) { unset($_SESSION["login"]); unset($_SESSION["pass"]); unset($_SESSION["id_user"]); Jump("index.php?link=logerror"); } else { $row=$this->Conn->GetRow("log",0); $_SESSION["id_user"]=$row["id"]; } } //------------------ Dibujado del Form // if (!isset($_SESSION["login"])) { $s=$s."<form name="".$this->name."" action=".SelfUrl()." method=post>"; $s=$s."<table>"; $s=$s."<tr><td>Login:</td><td><input type="text" id="user_login" name="user_login"></td></tr>"; $s=$s."<tr><td>Contraseña:</td><td><input type="password" id="user_pass" name="user_pass"></td></tr>"; $s=$s."<tr><td align="right"><a href="".SelfUrl()."?link=register" >Registrarse</a></td><td><input align=right type="submit" value="Entrar"></td></tr>"; $s=$s."</table>"; $s=$s."</form>"; return $s; } else { $s=$s."<table>"; $s=$s."<tr><td colspan=2 align="right"> Bienvenido ".$_SESSION["login"]."</td></tr>"; $s=$s."<tr><td colspan=2 align="right"> <a href="".SelfUrl()."?link=logoff">logoff</a></td></tr>"; $s=$s."</table>"; return $s; }
es algun problema de versiones? estoy haciendo algo mal que realmente sobrevive por los pelos en la otra version?
gracias
att. Diego Martinez
F_Tanori:
El problema no es de MySQL sino de PHP
Puedes mostrarnos el codigo de la pagina en donde, logras capturar ese valor(object) o la pagina a donde envias los resultados, a veces ocurre eso cuando se declaran variables,con el mismo nombre (en diferentes ambitos, con register_globals)
viewtopic.php?f=36&t=36000&p=131177#p131177
Saludos
.... Movido a PHP ....
Navegación
Ir a la versión completa