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:
$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