Ver Mensaje Individual
  #7 (permalink)  
Antiguo 04/05/2011, 17:17
alexg88
 
Fecha de Ingreso: abril-2011
Mensajes: 1.342
Antigüedad: 13 años
Puntos: 344
Respuesta: Problema de logeo en php

Creo que veo tu problema. La parte

Código PHP:
Ver original
  1. <?php
  2.  
  3.  
  4. $usuario = trim($_POST['user']);
  5.  
  6. $passpe = $_POST['passwordd'];
  7.  
  8.  
  9.   setcookie("usuarioco", $usuario, time()+3600);  
  10.  
  11.   setcookie("passco", $passpe, time()+3600);  
  12.  
  13.  
  14. }
  15.  
  16.  
  17.  
  18.  
  19.  
  20.  
  21.  
  22.  
  23.  
  24. $consulta5 = "SELECT * FROM familias WHERE admin = '$usuario' AND pass = '$passpe';";    //primero controla que el usuarioDEAPELLIDOS y contra este bien y si es FALSE hace que controle como segunda alternativa El usuario Admin y su PASS
  25.  
  26. $select5 = mysql_query($consulta5, $conectar); //hacemos la consulta
  27.  
  28. $contar5 = mysql_num_rows($select5); //contamos la cantidad de usuarios y buscamos nuestro user
  29.  
  30.  
  31.  
  32. if($contar5){
  33.  
  34.     echo("Usted esta logeado como ".$familia);
  35.  
  36. }else{
  37.  
  38.     echo("Ingreso mal los datos");
  39.  
  40. }
  41.  
  42.  
  43.  
  44.  
  45. ?>

debería estar en otra página php aparte que se encargase de validar los datos envíados y redirigiera a la página de la que procedes.

Por eso te funciona como lo hace, primero tienes que hacer login pero las cookies se crean cuando se refresca la página y te sigue apareciendo el formulario de login porque las cookies todavía no existen como tal.

También puedes hacer que las cookies se creen en el momento como te indican en la página que te pase antes, poniendo:
Código PHP:
Ver original
  1. <?php
  2.  
  3. if(!isset($COOKIE_SET))  //  $cookie_set es nuestra variable de control  
  4.                          //  de flujo
  5. {
  6.    setcookie("saludo", "hola");      
  7.    header("Location: $PHP_SELF?COOKIE_SET=1");  // ponemos cookie_set  
  8.    exit;                                        // como true
  9.    }                     // podriamos haber redireccionado a otra pagina
  10.    
  11.   ?>
  12.  
  13. Y de esta manera debería funcionar poniendolo en la propia página.