Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] Login desde texto plano

Estas en el tema de Login desde texto plano en el foro de PHP en Foros del Web. Estimados, Recurro a ustedes ya que hay un pequeño detallito que no me esta funcionando, debo desarrollar un sistema de muestra que lee los usuarios ...
  #1 (permalink)  
Antiguo 04/03/2015, 09:12
 
Fecha de Ingreso: marzo-2015
Ubicación: valparaiso
Mensajes: 3
Antigüedad: 9 años, 9 meses
Puntos: 0
Pregunta Login desde texto plano

Estimados,

Recurro a ustedes ya que hay un pequeño detallito que no me esta funcionando, debo desarrollar un sistema de muestra que lee los usuarios y contraseñas de un archivo de texto plano, cosa la cual hice pero aqui viene mi problema

ingreso algunos de los datos y pasan bien, luego del registro pasa a una pagina donde indica que el log fue exitoso y redirecciona a la pagina principal, el tema es que si no ingreso datos me arroja el mensaje que el usuario y contraseña son invalidos pero igual me redirecciona a la pagina uno

se que tengo que implementar un IF en cual tenga como clausula si el usuario es correcto me redireccione a la pagina1, y si es incorrecto me lleve a la pagina donde el usuario ingresa sus datos. les adjunto el codigo para ver si me pueden ayudar con este temita.

Código PHP:
<?php 
$user 
$_POST['usuario']; //Recogemos datos
$pass $_POST['pass'];
$correcto false;
$archivo "users.txt";
$hand fopen($archivo,"r") or die("Un error se ha producido."); // Abrimos el archivo modo lectura
$contents fread($hand,filesize($archivo));
$lineas explode("\n",$contents); //Separo en lineas
for($i=0;$i<count($lineas);$i++){ 
    
$posTab strpos($lineas[$i],"\t"); //Posicion del tabulador
    
$users[] = substr($lineas[$i],0,$posTab); // Separo el usuario del password
    
$passwords[] = substr($lineas[$i],$posTab,strlen($lineas[$i]));
    if((
$user == $users[$i]) && ($pass == trim($passwords[$i]))){
        
$correcto true//El usuario ha ingresado correctamente
    
}
}
if(
$correcto==true){
    echo 
"El usuario ha ingresado correctamente!";
}else{
    echo 
"Nombre de usuario y/o password inv&aacute;lidos";
    }
?>
  #2 (permalink)  
Antiguo 04/03/2015, 09:19
Avatar de hhs
hhs
Colaborador
 
Fecha de Ingreso: junio-2013
Ubicación: México
Mensajes: 2.995
Antigüedad: 11 años, 5 meses
Puntos: 379
Respuesta: Login desde texto plano

Si ya sabes la lógica que requieres asumo que solo necesitas saber como redireccionar y eso lo haces con la función header te dejo un articulo increíble que habla del tema y en español
__________________
Saludos
About me
Laraveles
A class should have only one reason to change.
  #3 (permalink)  
Antiguo 04/03/2015, 09:33
Avatar de GeekGirl  
Fecha de Ingreso: julio-2014
Mensajes: 423
Antigüedad: 10 años, 5 meses
Puntos: 44
Respuesta: Login desde texto plano

Podés hacerlo así:

Código PHP:
if ($correcto == true) { 
    
header("Location: pagina1.php");
} else { 
    
header("Location: login.php");

Puse pagina1.php y login.php. No sé cómo se llamaran tus archivos. Igual creo que se entiende la idea ^^

Saludos
  #4 (permalink)  
Antiguo 04/03/2015, 11:30
 
Fecha de Ingreso: marzo-2015
Ubicación: valparaiso
Mensajes: 3
Antigüedad: 9 años, 9 meses
Puntos: 0
Respuesta: Login desde texto plano

Estimados,

Muchas gracias, el tema es que soy autodidacta y no sabia como implementar el IF habia echo la redireccion con un codigo HTML pero no cumplia con la excepcion de seguridad necesaria.

Muchas gracias
  #5 (permalink)  
Antiguo 04/03/2015, 11:58
Avatar de GeekGirl  
Fecha de Ingreso: julio-2014
Mensajes: 423
Antigüedad: 10 años, 5 meses
Puntos: 44
Respuesta: Login desde texto plano

De nada! Acordate de marcar el tema como solucionado

Saludos ^^

Etiquetas: ciclos, excepciones, registro
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:37.