亚洲国产日韩欧美一区二区三区,精品亚洲国产成人av在线,国产99视频精品免视看7,99国产精品久久久久久久成人热,欧美日韩亚洲国产综合乱

首頁(yè) php教程 php手冊(cè) 一個(gè)登錄的類

一個(gè)登錄的類

Jun 21, 2016 am 09:14 AM
gt quot session this


/*
* 名稱:CnkknD PHP Login Class
* 描述:PHP用于登錄的類,基于MySQL
* 作者:Daniel King,cnkknd@163.com
* 日期:2003/8/25
*/

class Login
{
var $username; //用戶名
var $userpass; //密碼
var $userid; //用戶id
var $userlevel; //用戶級(jí)別

var $authtable="account"; //驗(yàn)證用數(shù)據(jù)表

var $usecookie=true; //使用cookie保存sessionid
var $cookiepath='/'; //cookie路徑
var $cookietime=108000; //cookie有效時(shí)間

var $err_mysql="mysql error"; //mysql出錯(cuò)提示
var $err_username="username invalid"; //用戶名無(wú)效提示
var $err_user="user invalid"; //用戶無(wú)效提示(被封禁)
var $err_password="password error"; //密碼錯(cuò)誤提示

var $err; //出錯(cuò)提示

var $errorreport=false; //顯示錯(cuò)誤

function Login($dbserv,$dbport,$dbuser,$dbpass,$dbname) //構(gòu)造函數(shù),連接數(shù)據(jù)庫(kù)
{
if(@mysql_pconnect($dbserv.":".$dbport,$dbuser,$dbpass))
{
mysql_select_db($dbname);
}
else
{
$this->errReport($this->err_mysql);
$this->err=$this->err_mysql;
}
}

function isLoggedin() //判斷是否登錄
{
if(isset($_COOKIE['sid'])) //如果cookie中保存有sid
{
session_id($_COOKIE['sid']);
session_start();
$this->username=$_SESSION['username'];
$this->userid=$_SESSION['userid'];
$this->userlevel=$_SESSION['userlevel'];
return true;
}
else //如果cookie中未保存sid,則直接檢查session
{
session_start();
if(isset($_SESSION['username']))
return true;
}
return false;
}

function userAuth($username,$userpass) //用戶認(rèn)證
{
$this->username=$username;
$this->userpass=$userpass;
$query="select * from `".$this->authtable."` where `username`='$username';";
$result=mysql_query($query);
if(mysql_num_rows($result)!=0) //找到此用戶
{
$row=mysql_fetch_array($result);
if($row['bannd']==1) //此用戶被封禁
{
$this->errReport($this->err_user);
$this->err=$this->err_user;
return false;
}
elseif(md5($userpass)==$row['userpass']) //密碼匹配
{
$this->userid=$row['id'];
$this->userlevel=$row['userlevel'];
return true;
}
else //密碼不匹配
{
$this->errReport($this->err_password);
$this->err=$this->err_password;
return false;
}
}
else //沒(méi)有找到此用戶
{
$this->errReport($this->err_username);
$this->err=$this->err_username;
return false;
}
}

function setSession() //置session
{
$sid=uniqid('sid'); //生成sid
session_id($sid);
session_start();
$_SESSION['username']=$this->username; //給session變量賦值
$_SESSION['userid']=$this->userid; //..
$_SESSION['userlevel']=$this->userlevel; //..
if($this->use_cookie) //如果使用cookie保存sid
{
if(!setcookie('sid',$sid,time()+$this->cookietime,$this->cookiepath))
$this->errReport("set cookie failed");
}
else
setcookie('sid','',time()-3600); //清除cookie中的sid
}

function userLogout() //用戶注銷
{
session_start();
unset($_SESSION['username']); //清除session中的username
if(setcookie('sid','',time()-3600))
//清除cookie中的sid
return true;
else
return false;
}

function errReport($str) //報(bào)錯(cuò)
{
if($this->error_report)
echo "ERROR: $str";
}
}
?>
mysql中表的結(jié)構(gòu)


代碼:
CREATE TABLE `account` (
`id` bigint(20) NOT NULL auto_increment,
`username` varchar(255) NOT NULL
使用一例


PHP代碼:

include "../myclasses/Login.php";
$dbserv="localhost";
$dbport="3306";
$dbuser="root";
$dbpass="123456";
$dbname="test";



本網(wǎng)站聲明
本文內(nèi)容由網(wǎng)友自願(yuàn)投稿,版權(quán)歸原作者所有。本站不承擔(dān)相應(yīng)的法律責(zé)任。如發(fā)現(xiàn)涉嫌抄襲或侵權(quán)的內(nèi)容,請(qǐng)聯(lián)絡(luò)admin@php.cn

熱AI工具

Undress AI Tool

Undress AI Tool

免費(fèi)脫衣圖片

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅(qū)動(dòng)的應(yīng)用程序,用於創(chuàng)建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費(fèi)的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費(fèi)的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強(qiáng)大的PHP整合開(kāi)發(fā)環(huán)境

Dreamweaver CS6

Dreamweaver CS6

視覺(jué)化網(wǎng)頁(yè)開(kāi)發(fā)工具

SublimeText3 Mac版

SublimeText3 Mac版

神級(jí)程式碼編輯軟體(SublimeText3)

熱門話題

Laravel 教程
1597
29
PHP教程
1488
72
華為GT3 Pro和GT4的差異是什麼? 華為GT3 Pro和GT4的差異是什麼? Dec 29, 2023 pm 02:27 PM

許多用戶在選擇智慧型手錶的時(shí)候都會(huì)選擇的華為的品牌,其中華為GT3pro和GT4都是非常熱門的選擇,不少用戶都很好奇華為GT3pro和GT4有什麼區(qū)別,下面就給大家介紹一下二者。華為GT3pro和GT4有什麼差別一、外觀GT4:46mm和41mm,材質(zhì)是玻璃鏡板+不鏽鋼機(jī)身+高分纖維後殼。 GT3pro:46.6mm和42.9mm,材質(zhì)是藍(lán)寶石玻璃鏡+鈦金屬機(jī)身/陶瓷機(jī)身+陶瓷後殼二、健康GT4:採(cǎi)用最新的華為Truseen5.5+演算法,結(jié)果會(huì)更加的精準(zhǔn)。 GT3pro:多了ECG心電圖和血管及安

SpringBoot Session怎麼設(shè)定會(huì)話超時(shí) SpringBoot Session怎麼設(shè)定會(huì)話超時(shí) May 15, 2023 pm 02:37 PM

問(wèn)題發(fā)現(xiàn)springboot專案生產(chǎn)session-out逾時(shí)問(wèn)題,描述下問(wèn)題:在測(cè)試環(huán)境透過(guò)改動(dòng)application.yaml配置session-out,經(jīng)過(guò)設(shè)定不同時(shí)間驗(yàn)證session-out配置生效,於是就直接設(shè)定了過(guò)期時(shí)間為8小時(shí)發(fā)布到了生產(chǎn)環(huán)境。然而中午接到客戶反應(yīng)項(xiàng)目過(guò)期時(shí)間設(shè)定較短,半小時(shí)不操作就會(huì)話過(guò)期需要重複登陸。解決處理開(kāi)發(fā)環(huán)境:springboot專案內(nèi)建Tomcat,所以專案中application.yaml配置session-out是生效的。生產(chǎn)環(huán)境:生產(chǎn)環(huán)境發(fā)布是

session失效怎麼解決 session失效怎麼解決 Oct 18, 2023 pm 05:19 PM

session失效通常是由於 session 的生存時(shí)間過(guò)期或伺服器關(guān)閉導(dǎo)致的。其解決方法:1、延長(zhǎng)session的生存時(shí)間;2、使用持久化儲(chǔ)存;3、使用cookie;4、非同步更新session;5、使用會(huì)話管理中介軟體。

php session刷新後沒(méi)有了怎麼辦 php session刷新後沒(méi)有了怎麼辦 Jan 18, 2023 pm 01:39 PM

php session刷新後沒(méi)有了的解決方法:1、透過(guò)「session_start();」開(kāi)啟session;2、把所有的公共配置寫(xiě)在一個(gè)php檔案內(nèi);3、變數(shù)名稱不能和陣列下標(biāo)相同;4、在phpinfo裡面查看session資料的儲(chǔ)存路徑,並查看該檔案目錄下的sessio是否儲(chǔ)存成功即可。

修復(fù):截圖工具在 Windows 11 中不起作用 修復(fù):截圖工具在 Windows 11 中不起作用 Aug 24, 2023 am 09:48 AM

為什麼截圖工具在Windows11上不起作用了解問(wèn)題的根本原因有助於找到正確的解決方案。以下是截圖工具可能無(wú)法正常工作的主要原因:對(duì)焦助手已開(kāi)啟:這可以防止截圖工具開(kāi)啟。應(yīng)用程式損壞:如果截圖工具在啟動(dòng)時(shí)崩潰,則可能已損壞。過(guò)時(shí)的圖形驅(qū)動(dòng)程式:不相容的驅(qū)動(dòng)程式可能會(huì)幹?jǐn)_截圖工具。來(lái)自其他應(yīng)用程式的干擾:其他正在運(yùn)行的應(yīng)用程式可能與截圖工具衝突。憑證已過(guò)期:升級(jí)過(guò)程中的錯(cuò)誤可能會(huì)導(dǎo)致此issu簡(jiǎn)單的解決方案這些適合大多數(shù)用戶,不需要任何特殊的技術(shù)知識(shí)。 1.更新視窗與Microsoft應(yīng)用程式商店應(yīng)用程

Springboot2 session設(shè)定超時(shí)時(shí)間無(wú)效怎麼解決 Springboot2 session設(shè)定超時(shí)時(shí)間無(wú)效怎麼解決 May 22, 2023 pm 01:49 PM

問(wèn)題:今天專案中遇到了一個(gè)設(shè)定時(shí)間逾時(shí)的問(wèn)題,按SpringBoot2的application.properties變更一直不生效。解決方案:server.*屬性用於控制SpringBoot所使用的嵌入式容器。 SpringBoot將使用ServletWebServerFactory實(shí)例之一來(lái)建立servlet容器的執(zhí)行個(gè)體。這些類別使用server.*屬性來(lái)配置受控的servlet容器(tomcat,jetty等)。當(dāng)應(yīng)用程式作為war檔部署到Tomcat實(shí)例時(shí),server.*屬性不適用。它們不適用,

PHP Session 跨域問(wèn)題的解決方法 PHP Session 跨域問(wèn)題的解決方法 Oct 12, 2023 pm 03:00 PM

PHPSession跨域問(wèn)題的解決方法在前後端分離的開(kāi)發(fā)中,跨域請(qǐng)求已成為常態(tài)。在處理跨域問(wèn)題時(shí),我們通常會(huì)涉及session的使用和管理。然而,由於瀏覽器的同源策略限制,跨域情況下預(yù)設(shè)無(wú)法共享session。為了解決這個(gè)問(wèn)題,我們需要採(cǎi)用一些技巧和方法來(lái)實(shí)現(xiàn)session的跨域共享。一、使用cookie跨域共享session最常

session php預(yù)設(shè)失效時(shí)間是多少 session php預(yù)設(shè)失效時(shí)間是多少 Nov 01, 2022 am 09:14 AM

session php預(yù)設(shè)失效時(shí)間是1440秒,也就是24分鐘,表示客戶端超過(guò)24分鐘沒(méi)有刷新,當(dāng)前session就會(huì)失效;如果使用者關(guān)閉了瀏覽器,會(huì)話就會(huì)結(jié)束,Session就不存在了。

See all articles