0
登錄這是否看起來好了的登錄腳本PHP 2人在同一時間在同一臺計算機pt.02
//Player 1 Login username and password
$p1name = $_POST['p1name'];
$p1pass = $_POST['p1pass'];
//player 2 Login username and password
$p2name = $_POST['p2name'];
$p2pass = $_POST['p2pass'];
$connection = mysql_connect("db_host", "db_user", "db_pass");
mysql_select_db("db_name", $connection);
get_user($p1name, $p1pass);
get_user($p2name, $p2pass);
$row = $result;
$found = false;
if(($row["username"] == $p1name && $row["password"] == sha1("$p1pass"))
&& ($row["username"] == $p2name && $row["password"] == sha1("$p2pass")))
{
$found = true;
break;
}
function get_user($username, $password)
{
$query = 'SELECT * FROM users';
$query .= ' WHERE username = ' . mysql_real_escape_string($username);
$query .= ' AND password = ' . mysql_real_escape_string(sha1($password));
$result = mysql_query($query);
return mysql_fetch_assoc($result);
}
您需要將`get_user()`的返回值賦給某個東西。你還需要兩個獨立的$ row行 - 「$ row [」username「] == $ p1name`和`$ row [」username「] == $ p2name`是互斥的條件。 – 2010-12-01 20:00:44
我在這裏有點困惑......你爲什麼要在同一個會話中登錄2個人工智能?您的代碼一次只能用於1人(= Session)。如果打開新會話,則應爲該會話創建新用戶。還總是鹽你的密碼。由於存在彩虹表,簡單地對它們進行散列已經不再安全。 – 2010-12-01 20:01:50
一個if語句用於第一行,然後一個elseif語句用於$ row的第二個實例,並且不能使用兩個用戶的會話ID從同一臺計算機播放 – hgbso 2010-12-01 20:12:40