Re: [PHP-ES] Problemas con session

[email protected] (Carlos Medina)
Newsgroups php.general.es
Organization SimplyNetworks
Message-ID <[email protected]>
Am 21.11.2010 15:16, schrieb Irantzu Leunda Biskarret:
> Estimados amigos, tengo un problemilla con unas variables de sesion.
> Estoy poniendo lo siguiente:
> en un archivo llamado index tengo un formulario donde debo introducir
> usuario y contraseña y lo paso a un archivo llamado privado.php que
> tiene lo siguiente:
>
> <?php
> if(!$iden or !$cont)
> {
> include("index.php");
> }
> else
> {
>
> if($iden=="fertor" and $cont=="fertor10")
> {
> session_start();
> $_SESSION[admin] = true;
>
> include("panel.php");
> }
> else
> {
> include("index.php");
> }
> }
> ?>
>
> El caso es que no me está pasando nada porque siempre se queda en el
> formulario. Lo pueden ver en http://dosalcubo.net/fertor/admin
>
> Como siempre muchísimas gracias por todo
>
Hola Irantzu,
como siempre dando un poco mas de lo "standard":

Utiliza una clase para separar el login del resto de la aplicacion. 
Puedes usar clases con accesso a metodos estaticos. Ejemplo:

class Login
{
    public static function login( $username, $password )
    {
       if( isset($username) && isset($password))
       {
          Etc. etc.
          return true
       }
    }
}

Aqui puedes incluso iniciar  la sesion e incluso rebotarla usando un 
metodo public function is_login() que te elimine la sesion cuando las 
condiciones del usuario sean contrarias a lo que has definido.

<?php
   if(!$iden or !$cont)
   {
     include("index.php");
   }
   else
   {
     if($iden=="fertor" and $cont=="fertor10")
     {
        $login = Login::login( $_POST['username'], $_POST['passwrd']);
        if( true == $login)
        {
           include("panel.php");
        }
     }

Etc. Etc

Saludos

Carlos Medina
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.