Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

fabiomorato

Problema na leitura de arquivo

Recommended Posts

Olá pessoal,

estou desenvolvendo um sistema de login para funcionar juntamente à um plugin de bukkit (que não usa banco de dados, e sim um arquivo de texto - sei que é muito inseguro, mas eu dou um jeito mais tarde...), e estou tendo um simples problema, e nada do que faço resolve...

Bom, aí está o código:

 

<?php
$usuario = isset($_GET['usuario'])? $_GET['usuario'] : null;
$senha = isset($_GET['senha'])? $_GET['senha'] : null;

  if($usuario!=null and $senha!=null){
    $arquivo = fopen("passwords.yml", "r");
    $senha1 = null;
    $encontrado = false; 
    
    $i = 1;
    while(!feof($arquivo)){
      $linha[$i] = fgets($arquivo);
      $linhaid[$i] = explode(":", $linha[$i]);
      if($linhaid[$i][0]==$usuario){
        $encontrado = true;
        $numlinha = $i;
      }
      $i++;
    }
    fclose($arquivo);
    
    if($encontrado==true){
      $senha1 = $linhaid[$numlinha+1][1];
      $senha1 = str_replace("'", "", $senha1);
      $senha1 = str_replace(" ", "", $senha1);
      
      if($senha1==$senha){
        echo "Senha correta!";
      }
      else{
        echo "'$senha1' ||||| '$senha' <br />";
        echo "Usuário e/ou senha incorretos!";
      }
    }
  }
  else{
    echo "Você não inseriu seu usuário/senha!";
  }
?>

 

Arquivo passwords.yml:

Fabio:
  Password: '123'
Usuario:
  Password: '456'

 

Quando tento entrar por localhost/?usuario=Usuario&senha=456 ele entra de boa, mas quando tento entrar por ?usuario=Fabio&senha=123 aparece um caractere na frente de 123... Tentei removê-lo com str_replace(" ", "", $senha1), porém ele não é removido (tentei também no lugar do espaço colocar \n e \t, mas não era nenhum dos dois...).

 

Alguém pode me ajudar?

Obrigado.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Problema resolvido...

<?php
$usuario = isset($_GET['usuario'])? $_GET['usuario'] : null;
$senha = isset($_GET['senha'])? $_GET['senha'] : null;
$extraC = "
";

  if($usuario!=null and $senha!=null){
    $arquivo = fopen("passwords.yml", "r");
    $senha1 = null;
    $encontrado = false; 
    
    $i = 1;
    while(!feof($arquivo)){
      $linha[$i] = fgets($arquivo);
      $linhaid[$i] = explode(":", $linha[$i]);
      if($linhaid[$i][0]==$usuario){
        $encontrado = true;
        $numlinha = $i;
      }
      $i++;
    }
    fclose($arquivo);
    
    if($encontrado==true){
      $senha1 = $linhaid[$numlinha+1][1];
      $senha1 = str_replace("'", "", $senha1);
      $senha1 = str_replace($extraC, "", str_replace(" ", "", $senha1));
      
      if($senha1==$senha){
        echo "Senha correta!";
      }
      else{
        echo "'$senha1' ||||| '$senha' <br />";
        echo "Usuário e/ou senha incorretos!";
      }
    }
  }
  else{
    echo "Você não inseriu seu usuário/senha!";
  }
?>

 

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.