diff options
Diffstat (limited to 'includes/user.inc')
-rw-r--r-- | includes/user.inc | 23 |
1 files changed, 13 insertions, 10 deletions
diff --git a/includes/user.inc b/includes/user.inc index bdc62c3ce..9c4f38f66 100644 --- a/includes/user.inc +++ b/includes/user.inc @@ -1,17 +1,20 @@ <? class User { - function User($userid, $passwd) { - $result = db_query("SELECT * FROM users WHERE LOWER(userid) = LOWER('$userid') && passwd = PASSWORD('$passwd') && STATUS = 2"); - if (db_num_rows($result) == 1) { - foreach (db_fetch_row($result) as $key=>$value) { $field = mysql_field_name($result, $key); $this->$field = stripslashes($value); $this->field[] = $field; } - db_query("UPDATE users SET last_access = '". time() ."', last_host = '$GLOBALS[REMOTE_HOST]' WHERE id = $this->id"); + function User($userid, $passwd = 0) { + if ($passwd) { + $result = db_query("SELECT * FROM users WHERE LOWER(userid) = LOWER('$userid') && passwd = PASSWORD('$passwd') && STATUS = 2"); + if (db_num_rows($result) == 1) { + foreach (db_fetch_row($result) as $key=>$value) { $field = mysql_field_name($result, $key); $this->$field = stripslashes($value); $this->field[] = $field; } + db_query("UPDATE users SET last_access = '". time() ."', last_host = '$GLOBALS[REMOTE_HOST]' WHERE id = $this->id"); + } } - } - function User($userid) { - $result = db_query("SELECT * FROM users WHERE userid = '$userid' && STATUS = 2"); - if (db_num_rows($result) == 1) { - foreach (db_fetch_row($result) as $key=>$value) { $field = mysql_field_name($result, $key); $this->$field = stripslashes($value); $this->field[] = $field; } + else { + $result = db_query("SELECT * FROM users WHERE userid = '$userid' && STATUS = 2"); + if (db_num_rows($result) == 1) { + foreach (db_fetch_row($result) as $key=>$value) { $field = mysql_field_name($result, $key); $this->$field = stripslashes($value); $this->field[] = $field; } + db_query("UPDATE users SET last_access = '". time() ."', last_host = '$GLOBALS[REMOTE_HOST]' WHERE id = $this->id"); + } } } } |