Jump to content

Txt based login with 3 different or more password file to search in or list ?


Peuplarchie

Recommended Posts

Good day to you all,

                  I'm working on my login script and I was wondering how can i make the txt file based login to look into 3 txt file for login and password ? 

 

              My problem is I don't have a clue on how to code it.

 

Here is my code :

 




<table border="1" cellpadding="0" cellspacing="0" align="center" width="800"  align="top">
<tr><td width="800" class="black" valign="top" align="right">

<?php
session_start();


$file = file("pass.txt");
$data= array();
foreach($file as $value){
    list($user, $password, $url) = explode('=>', $value);
    $data[$user] = array("url"=>$url, "password"=>$password);
}



if(isset($_POST['username']) && isset($_POST['password'])) {
    if($data[$_POST['username']]['password'] == $_POST['password']) {
        $_SESSION['username'] = $_POST['username'] . " " . $_POST['password'];
        $_SESSION['users'] = $_POST['username'];
        $_SESSION['present'] = true;
        header('Location: ' . $data[$_POST['username']]['url']);
    } else {
        login('Wrong user name or password. <br>');
    }
} else {
    login();
}
?><?php

function login($response='Admin login') {

?>
    <p><?=$response?></p>
    <form action="" method="post">
        <b>User name</b>
        <input name="username" type="text" />
        <b>Code</b>
        <input name="password" type="password">
        <input type="submit" value="Login" />
    </form>

<?php } ?> 

</td></tr>
</table>

 

Thank for any help !

 

Link to comment
Share on other sites

Solved

 


<?php
//sessions must be initialized prior to any output if output buffering if off
session_start();

//the list of files containing passwords
$files = array(
    "file1.txt", 
    "file2.txt", 
    "file3.txt"
);

//if list of users not set create a new array
if(!isset($_SESSION['users']))
    $_SESSION['users'] = array();
    
if(isset($_POST['username']) && isset($_POST['password'])){
    
    //need to remove slashes from POST if magic_quotes are on 
    if(get_magic_quotes_gpc()){
        $_POST['username'] = stripslashes($_POST['username']);
        $_POST['password'] = stripslashes($_POST['password']);
    }            
    
    $userFound = false; //we need this to exit the loops
    foreach($files as $file){ //loop every file in the $files array
        if($fh = fopen($file, "r")){
            while(!feof($fh) && !$userFound){ //while not the end of the current file or the user was not found
                list($username, $password, $url) = explode(",", fgets($fh,1024));
                
                if(($username == $_POST['username']) && ($password = $_POST['password'])){
                    $_SESSION['username'] = $username;
                    $_SESSION['present'] = true;
                    array_push($_SESSION['users'], $username); //add the current user to the list of users
                    header("Location: ".$url);
                    $userFound = true; //confirm that the user was found
                }    
            }
            
            fclose($fh);
            //we need to use break to exit the foreach loop if the user is found in one of the files
            if($userFound)
                break;
        } else
            echo "Unable to open a required password file: $file";
    }
    if(!$userFound)
        login('Wrong username or password.<br />');
} else {
    login();
}
?>
<?php

function login($response='Admin login') {
?>
    <p><?=$response?></p>
    <form action="" method="post">
        <b>User name</b>
        <input name="username" type="text" />
        <b>Code</b>
        <input name="password" type="password">
        <input type="submit" value="Login" />
    </form>

<?php } ?> 

Link to comment
Share on other sites

This thread is more than a year old. Please don't revive it unless you have something important to add.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.