2014-10-29 51 views
-3

我已經搜索了幾周,但找不到與此特定問題相關的任何內容。如何修改PHP用戶名/密碼腳本只需要密碼

我有一個PHP頁面的live.php。它成功地要求用戶名和密碼才能訪問受保護的頁面(livedata.php)。下面的表格是live.php:

<form name="LoginForm" form action="liveverify.php" method="post"> 
User Name:<input type="text" name="username" value="" /> 
Password:<input type="password" name="password" value="" /> 
<input type="submit" value="Login" /></p> 
</form> 

liveverify.php有:

<?php 
$usernames = array("user1, uer2, user3"); 
$passwords = array("pass1, pass2, pass3"); 
$page = "livedata.php"; 

for($i=0;$i<count($usernames);$i++) 
{ 
$logindata[$usernames[$i]]=$passwords[$i]; 
} 
$found = 0; for($i=0;$i<count($usernames);$i++) { if ($usernames[$i] == $_POST["username"])  { $found = 1; } } if ($found == 0) { header('Location: liveerror.php'); exit; } 
if($logindata[$_POST["username"]]==$_POST["password"]){ session_start(); $_SESSION["username"]=$_POST["username"]; header('Location: '.$page); exit;}else{ header('Location: liveerror.php'); exit;}?> 

我的願望是消除對用戶名的需要,並且只需要一個有效的密碼。我假設我需要消除對liveverify.php中用戶名的引用。但是,我嘗試過的所有東西都失敗了。我感謝任何幫助。

+0

嗯...是的,你只需要消除用戶名的al引用... – vcanales 2014-10-29 20:02:26

+0

密碼是如何真正存儲的? – pmahomme 2014-10-29 20:06:28

+0

這是一個壞主意 – developerwjk 2014-10-29 20:11:31

回答

0

這似乎有點陌生,忽略了用戶名,但假設用戶名仍會通過的形式來傳遞你應該能夠做到像

$passwords = array("pass1", "pass2", "pass3"); 
$page = "livedata.php"; 

if (in_array($_POST["password"], $passwords)) 
{ 
    session_start(); 
    $_SESSION[ "username" ] = $_POST[ "username" ]; 
    header('Location: ' . $page); 
    exit; 
} 
else 
{ 
    header('Location: liveerror.php'); 
    exit; 
} 

這將允許用戶名不匹配,成爲什麼用戶喜歡,雖然

+0

這正是我所期待的。這是一個非常小的網站,只是爲了阻止大衆。沒有任何價值。謝謝 – 2014-10-29 21:00:13

相關問題