Ver Mensaje Individual
  #4 (permalink)  
Antiguo 29/07/2009, 10:01
jonatanc
 
Fecha de Ingreso: enero-2009
Mensajes: 408
Antigüedad: 15 años, 3 meses
Puntos: 14
Respuesta: Error con COOKIES PhP

Una pregunta para que usas if(setcookie==true) ?.

Por otro lado yo sinceramente lo implementaria con sesiones te quedaria algo asi , te publico un ejemplo:

pasarela.php

Código php:
Ver original
  1. <?php
  2.  
  3. if(isset($_POST){
  4.  
  5. $username=(isset($_POST['username'])?mysql_real_escape_string($_POST['username']):false;
  6.  
  7. $password=(isset($_POST['password'])?mysql_real_escape_string($_POST['password']):false;
  8.  
  9. if($username and $password){
  10.  
  11. $query = "SELECT id FROM usuarios WHERE username='{$username}' AND password='{$password}'";
  12.  
  13. $query=mysql_query($query,$conexion);
  14.  
  15. if(mysql_num_rows($query)>0){
  16.   $_SESSION['username']=$username;
  17.   $_SESSION['password']=md5($password);
  18.   echo "<a href='panel.php'>Bienvenido - Ir al panel</a>";
  19. }else{
  20.  Header("Location: error.php");
  21. }
  22.  
  23. }else{
  24.  
  25. echo "Debes completar todos los campos bien";
  26.  
  27. }
  28.  
  29. ?>

panel.php

Código php:
Ver original
  1. <?php
  2. if(isset($_SESSION['username') && (isset($_SESSION['password']))){
  3.  
  4. echo "Bienvenido ".$_SESSION['username'];
  5.  
  6. echo "<a href='logout.php'>Cerrar sesion</a>";
  7.  
  8. }else{
  9.  
  10. echo "Debe loguearse";
  11.  
  12. }
  13.  
  14. ?>

logout.php
Código php:
Ver original
  1. <?php
  2.  
  3. echo "Hasta luego";
  4.  
  5. ?>


Bueno te comento que hacemos de diferente , lo unico diferente es lo de sesiones , el resto tiene una logica similar al tuyo , compruebo que hayan enviado los datos , compruebo que ningun campoe ste vacio ,securizo las variables pasadas mediante mysql_real_escape_string , luego , hago una consulta sql para comprobar si existe un registro que coincide con nombre de usuario y password , si existe , creo en el array de sesion dos items uno denominado password y el otro username y le muestor un mensaje que dice bienvenido y le doy un link al panel de control , si la consulta arroja como resultado 0 coincidencias redirecciono a una pagina de error , si los datos enviados por el form no estan completos imprimo un mensaje que debe completar bien los datos.


Cualquier duda consulta :).

Te dejo una referencia a sesiones: http://ar2.php.net/manual/en/book.session.php