dtdvlazd56637 2013-05-12 19:44
浏览 196
已采纳

Php登录/注册数据存储在txt中

I'm trying to make a simple login/reg, but the login doesn't work, only with the last line of my txt file, probably because of the other lines contain the ' ' on the end of every line, but it worked before, I don't know what went wrong... What do I have to do to make it work? Here's my code:

login.php:

<?php
if(isset($_POST["name"]) && isset($_POST["password"])){
    $file = fopen('data.txt', 'r');
    $good=false;
    while(!feof($file)){
        $line = fgets($file);
        $array = explode(";",$line);
        if($array[0]==$_POST["name"] && $array[1]==$_POST["password"]){
            $good=true;
            break;
        }
    }

    if($good){
        $message="Welcome";
    }else{
        $message="Try again";
    }
    include 'message.html';
fclose($file);
}else{
    include 'login.html';
}
?>

reg.php:

<?php
if(isset($_POST["name"]) && isset($_POST["password"])){
    $f=fopen("data.txt","a");
    fputs($f,$_POST["name"].";".$_POST["password"]."
");
    fclose($f);
}else{
    include 'reg.html';
}
?>

And this is how the data.txt looks like:

Viktor;1234
Eve;12345
Cathlin;12356
  • 写回答

2条回答 默认 最新

  • dongzha3058 2013-05-12 19:54
    关注

    Use trim() to strip away whitespaces from the beginning and end of the strings. http://php.net/manual/en/function.trim.php

    while(!feof($file)){
        $line = fgets($file);
    
        list($user, $pass) = explode(';', $line);
    
        if(trim($user) == $_POST['name'] && trim($pass) == $_POST['password']){
            $good=true;
            break;
        }
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 目前主流的音乐软件,像网易云音乐,QQ音乐他们的前端和后台部分是用的什么技术实现的?求解!
  • ¥60 pb数据库修改与连接
  • ¥15 spss统计中二分类变量和有序变量的相关性分析可以用kendall相关分析吗?
  • ¥15 拟通过pc下指令到安卓系统,如果追求响应速度,尽可能无延迟,是不是用安卓模拟器会优于实体的安卓手机?如果是,可以快多少毫秒?
  • ¥20 神经网络Sequential name=sequential, built=False
  • ¥16 Qphython 用xlrd读取excel报错
  • ¥15 单片机学习顺序问题!!
  • ¥15 ikuai客户端多拨vpn,重启总是有个别重拨不上
  • ¥20 关于#anlogic#sdram#的问题,如何解决?(关键词-performance)
  • ¥15 相敏解调 matlab