Редакция 16 |
Редакция 20 |
К новейшей редакции |
Авторство |
Сравнить с предыдущей |
Последнее изменение |
Открыть журнал
| Скачать
| RSS
<?php
/**
* KBase
* http://alex-w.org.ru/p/kbase/
*
* Copyright (c) 2009 Alexander Wolf
* Dual licensed under the MIT and GNU LGPL licenses.
* http://alex-w.org.ru/p/kbase/license
*
*/
class Auth
{
/* Check user and return User_ID (zero if user not exsists)
* @param $login - user login
* $passhash - encrypted user password
* $dblink - link to database
* @access public
* @return UserID (int)
*/
function getUserID
($login, $passhash, $dblink) {
$request =& $dblink->query("SELECT user_id FROM members WHERE login='$login' AND passwd='$passhash'");
if ($request->numRows()==0) {
return 0;
} else {
$request->fetchInto($get);
return $get["user_id"];
}
}
/* Get information about user
* @param $UserID - ID user
* $dblink - link to database
* @access public
* @return UserInfo (array)
* UserInfo[UserID] - ID user
* UserInfo[RealName] - real name of user
* UserInfo[Status] - user status
* UserInfo[Registered] - date of registered
*/
function getUserInfo
($UserID, $dblink) {
$result = array();
$request =& $dblink->query("SELECT * FROM members WHERE user_id='$UserID'");
if ($request->numRows()!=0) {
$request->fetchInto($get);
$result["UserID"] = $get["user_id"];
$result["RealName"] = $get["realname"];
$result["Status"] = $get["status"];
$result["Registered"] = $get["registered"];
} else {
$result["UserID"] = 0;
}
return $result;
}
/* Encrypt password
* @param $password - not encrypted user password
* @access public
* @return PasswordHash (chars)
*/
function encPass
($password) {
return md5(sha1($password)."-KBase-".md5($password));
}
/* Register new user
* @param $login - user login
* $passhash - encrypted user password
* $realname - real name of user
* $status - user status
* $dblink - link to database
* @access public
* @return ErrMsg (string)
*/
function registerUser
($login, $passhash, $realname, $status, $dblink) {
$request =& $dblink->query("INSERT INTO members SET login='$login', passwd='$passhash', realname='$realname', status='$status', registered=NOW()");
if (PEAR
::isError($dblink)) {
die($result = $dblink->getMessage());
} else {
$result = "OK";
}
return $result;
}
}
?>