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