Foros del Web » Programando para Internet » PHP »

enésimo sistema de contraseña... me ayudas??

Estas en el tema de enésimo sistema de contraseña... me ayudas?? en el foro de PHP en Foros del Web. Hola foro!!! Estoy haciendo un portalillo para meter fotos de la family, amigos, cumples y demás, la cuestión es que qiero que cada sección tenga ...
  #1 (permalink)  
Antiguo 11/05/2005, 02:43
Avatar de X3mdesign  
Fecha de Ingreso: octubre-2003
Ubicación: Madrid
Mensajes: 640
Antigüedad: 14 años, 2 meses
Puntos: 2
enésimo sistema de contraseña... me ayudas??

Hola foro!!!

Estoy haciendo un portalillo para meter fotos de la family, amigos, cumples y demás, la cuestión es que qiero que cada sección tenga una pass concreta, para que no todo el mungo pueda ver todas las secciones...

Entonces me he creado una tabla que contiene la pass de cada sección y otro parámetros... y me he hecho un "require" al inicio de mi index para que compueba primero si la sección tiene contraseña, que la tiene, pues comprueba si viene de un formulario para validarla y si no es así comprieba si la cookie está definida... éste es mi script.
Código PHP:
<?php 
include("lib/db_lib.php");

$dominio=$_SERVER['HTTP_HOST'];

if(isset(
$_POST['pass'])){ 
    
$login=$_POST["user"];
    
$pass=$_POST["pass"];
    
$acceso=$_POST['acceso'];
    
    
$usuario mysql_query ("SELECT `pass` FROM `menu` WHERE `link`='$acceso' AND `pass`='$pass' LIMIT 1");
    
$result mysql_fetch_row ($usuario);
    
    if (
$result){
        
$cookie_name "fiestamigos";
        
$claves=array($acceso => '$result[0]');
        
//$cookie_value = $claves;
        
$cookie_value $result[0];
        
$cookie_expire time() + 86400//24h.
        
$cookie_domain $dominio;
        
setcookie($cookie_name,$cookie_value,$cookie_expire,"/",$cookie_domain,0);
        echo 
$HTTP_COOKIE_VARS["fiestamigos"];
        
header ("Location: index.php?seccion=$acceso");
        exit;
    }else{
        
header ("Location: index.php?seccion=login&acceso=$seccion");
        exit;
    }
}else{

    
$seccion=$HTTP_GET_VARS['seccion'];
    
$usuario mysql_query ("SELECT `pass` FROM `menu` WHERE `link`='$seccion' LIMIT 1");
    
$result mysql_fetch_row ($usuario);
    if(
$result[0]!=""){
        if(
$HTTP_COOKIE_VARS["fiestamigos"]!=$result[0]){
            
header ("Location: login.php?seccion=login&acceso=$seccion");
            exit;
        }
    }
}
?>
Pero no me funciona.... siempre me sale el "login" aunqu ehaya metido la clave bien... (si no tiene clave veo bien la seccio)

Otra cosa... como me chaparon el sitio de [email protected] por falta de visitas... lo estoy probando en "localhost"... tengo que hacer algo para que me funcionen las cokokies?? igual es por eso....

Muchas gracias!!!!
__________________
Nippon-Tour, tu portal sobre Japón
¿Te gusta el manga, haces tus propios dibujos? Visita FanArt de Nippon-Tour
  #2 (permalink)  
Antiguo 11/05/2005, 03:17
Avatar de jam1138
/** @package Moderador */
 
Fecha de Ingreso: julio-2004
Ubicación: sèveR led onieR lE
Mensajes: 9.368
Antigüedad: 13 años, 4 meses
Puntos: 101
Perdona por no revizar a detalle tu código... antes aclarame:
Tu formulario contiene tres campos; usuario, password, accseso.
- ¿qué contiene acceso?
- ¿el usuario y password es un loguin general?.
- Si no insertas un password (lo dejas vacio) sí te lleva a la sección restringida?
- ¿Susede algo simililar dejando algún otro campo vacio?
- Si lograste ingresar (sin password) ¿para la siguiente sí te lee tu cookie?

Creo, debido a ese comportamiento.. tu script siempre se "pasea" en esta parte:
Código PHP:
   if ($result){
        
$cookie_name "fiestamigos";
...
        
header ("Location: index.php?seccion=$acceso");
        exit;
    }else{
        
header ("Location: index.php?seccion=login&acceso=$seccion");
        exit; 
- ¿podrías comprobarlo??... no uses header, usa echos para ver por dónde va tu script y en su caso.. falla... primero hubica el error.

... demasiadas preguntas ¿no?...

Ahora... , creo te complicas demaaasiado... si el loguin es general quizá te convenga mejor establecer niveles de permisos... y dejame decirte que evites el uso de cookies, no es seguro su manejo... haz uso de sesiones!!! Ve las FAQ que están bien explicadas.

Te dejo este enlace, quizá te ayude a reformular tu problema: http://www.forosdelweb.com/f18/holaaaa-alguien-sabe-proteger-paginas-con-php-287411/ (lee los enlaces también).

Saludos, suerte y disculpa que en vez de ayudarte te complique más .
__________________
٩(͡๏̯͡๏)۶
» Cómo hacer preguntas de manera inteligente «

"100 años después, la revolución no es con armas, es intelectual y digital"
  #3 (permalink)  
Antiguo 11/05/2005, 04:49
Avatar de X3mdesign  
Fecha de Ingreso: octubre-2003
Ubicación: Madrid
Mensajes: 640
Antigüedad: 14 años, 2 meses
Puntos: 2
gracias jam

a ver... paso a paso..

Cita:
- ¿qué contiene acceso?
contiene la sección a donde se quiere acceder, el porta se carga con includes mediente una variable en la URL... así cuando está en login.php sé qué sección habían pinchado anteriormente...

Cita:
- ¿el usuario y password es un loguin general?.
sí, el usuario es irrelevante, sólo importa la pass que es la mismo apara todos los usuarios y única en cada sección.

Cita:
- Si no insertas un password (lo dejas vacio) sí te lleva a la sección restringida?
pues no lo había probado... lo que ocurre es que desaparece el formaulario la URL no cambia.. pero se queda en blanco la zona del form, pero la cornisa y menú se carga bien...

Cita:
- ¿Susede algo simililar dejando algún otro campo vacio?
si la sección no tiene pass, accede correctamente, si no ocurre lo anterior.

Cita:
- Si lograste ingresar (sin password) ¿para la siguiente sí te lee tu cookie?
Lee la cookie si en esa sección el campo `pass` tiene un valor != ""

Cita:
- ¿podrías comprobarlo??... no uses header, usa echos para ver por dónde va tu script y en su caso.. falla... primero hubica el error.
lo qu ehe hecho ha sido quitar los header que llevan al "index" en caso sorrecto... y parece que funciona, pero al pinchar en una imagen para realizar un comentario.. me pide de nuevo el pass... con lo que creo que el "setcookie" me falla...

Conclusión... voy a probar con sesiones como bien me recomiendas... lo que pasa es que mi intención era hacer una cookie que fuese una matriz para poder ir de una sección a otra y que sólo te preguntase una vez la pass...

Saludos y gracias again!!!!
__________________
Nippon-Tour, tu portal sobre Japón
¿Te gusta el manga, haces tus propios dibujos? Visita FanArt de Nippon-Tour
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 19:21.