Ver Mensaje Individual
  #1 (permalink)  
Antiguo 15/07/2014, 07:31
Avatar de lmichailian
lmichailian
 
Fecha de Ingreso: noviembre-2013
Mensajes: 20
Antigüedad: 10 años, 5 meses
Puntos: 0
Al cambiar de pagina no mantiene la sesion

Buenos días mi problema es que mi código cuando recargo la pagina mantiene la sesión pero cuando, por ejemplo, entro a X sitio y vuelvo a ingresar al mio no mantiene la sesión.

session_start() esta establecido en el index el cual requiere estos dos. Agradezco cualquier orientación saludos!

El codigo es el siguiente:

Código PHP:
<?php 
    

    
if (isset($_POST["user"]) && isset($_POST["password"]) ) {    
    
        
$user    checkLogin($_POST["user"], $_POST["password"]);

        if(
$user) {

        
$_SESSION["user"] = $user;
        }

    } else {

        
$user FALSE;
    }    
                        
?>

<header class="upper">
            <nav id="header-container">
                <ul>
                    <li><a href="index.php">Inicio</a></li>
                    <li><a title="Quien soy" class="upper" href="#">Quien soy</a></li>
                    <li><a title="Diseño Web" id="dropper" href="#">Dise&ntilde;o Web</a>
                        <ul class="drop-menu upper">
                             <li><a href="#">Consultoria</a></li>
                             <hr>
                             <li><a title="Proyectos" href="">Proyectos</a></li>
                         </ul>    
                    </li>
                    <li ><a title="Blog" class="upper" href="#">Blog</a></li>
                    <li ><a tittle="Contacto" class="upper" href="#">Contacto</a></li>
                </ul>
            
                <?php 
                        
echo "<div class='login'>";

                    if (
isLogin()) {
                        
                        echo 
"<h3>Bienvenido"." ".$user["user"]."!</h3>";
                        echo 
"<a href='".closeSession()."'><button class='danger-red'>Cerrar Sesion</button></a>";

                    } 

                    if (!
isLogin()) {
                        
                        echo 
"<button class='aqua-green login-btn'>Iniciar Sesi&oacute;n</button>
                              <a href='index.php?page=sign-up'><button class='orange'>Registrarme</button></a>"
;
                    }     
                    
                    if (
wrongData($user)) {
                        echo 
"<h3 style='position:absolute; color:red'><em>Datos invalidos</em></h3>";
                    }

                    echo 
"</div>";
                
?>
                <div class="rockerModal">
                    <?php
                        
require TEMPLATE_PATH.'form.html';
                    
?>
                  </div>
            </nav>    
</header>
ESTE CODIGO DEPENDE DE:

Código PHP:
<?php

    
function checkLogin($user,$password) {

        
$connect connect();

        
$password mysqli_real_escape_string($connect,$password);

        
$user       mysqli_real_escape_string($connect,$user);

        
$fields   "id,user,password,name,is_author,is_root";
        
        
$sql      "SELECT $fields FROM users WHERE user='$user' AND password='$password'";

        
$result   queryArray($sql);

        if (
$result) {
            return 
$result[0];
        }

        return 
FALSE;
    }

    function 
closeSession(){
        
session_destroy();
    }

    function 
isLogin(){

        if (isset(
$_SESSION["user"])) {
            return 
TRUE
        }    
            return 
FALSE;
     }

     
     function 
wrongData($user) {
         if (isset(
$_POST["user"]) && $user["user"] != $_POST["user"] && isset($user)) {
             return 
TRUE;
         }
         return 
FALSE;
    }