PHP網(wǎng)頁游戲?qū)W習(xí)之Xnova(ogame)源碼解讀(四)
五、 用戶登錄(login.php)
在開始的時候,我們說過游戲的入口是index.php文件;我們已經(jīng)安裝好了,自然轉(zhuǎn)向登錄流程,開始看。
前面照例是一段我們前進介紹過的代碼,我們就不再詳細講了;不同的是使用的語言文件是login.mo,還有一個LOGIN的常量。如下
define('INSIDE' , true);
define('INSTALL' , false);
define('LOGIN' , true);
$InLogin = true;
$xnova_root_path = './';
include($xnova_root_path . 'extension.inc');
include($xnova_root_path . 'common.' . $phpEx);
includeLang('login');
接下來又是我們前面講過的結(jié)構(gòu),我們看初次進入的分支是下面代碼:
$parse = $lang;
$Count = doquery('SELECT COUNT(*) as `players` FROM {{table}} WHERE 1', 'users', true);
$LastPlayer = doquery('SELECT `username` FROM {{table}} ORDER BY `register_time` DESC', 'users', true);
$parse['last_user'] = $LastPlayer['username'];
$PlayersOnline = doquery("SELECT COUNT(DISTINCT(id)) as `onlinenow` FROM {{table}} WHERE `onlinetime` > '" . (time()-900) ."';", 'users', true);
$parse['online_users'] = $PlayersOnline['onlinenow'];
$parse['users_amount'] = $Count['players'];
$parse['servername'] = $game_config['game_name'];
$parse['forum_url'] = $game_config['forum_url'];
$parse['PasswordLost'] = $lang['PasswordLost'];
$page = parsetemplate(gettemplate('login_body'), $parse);
// Test pour prendre le nombre total de joueur et le nombre de joueurs connect閟
if ($_GET['ucount'] == 1) {
$page = $PlayersOnline['onlinenow']."/".$Count['players'];
die ( $page );
} else {
display($page, $lang['Login']);
}
主要是取得注冊用戶數(shù)、最后注冊用戶、當(dāng)前在線數(shù);并顯示登陸歡迎頁面,包括前面取得的這些用戶數(shù)據(jù)。
好了,現(xiàn)在用戶可以選擇注冊并轉(zhuǎn)向前面章節(jié)流程,或者是輸入用戶名和密碼轉(zhuǎn)入登錄流程。
1. 先根據(jù)輸入的用戶,從數(shù)據(jù)庫取得此用戶的記錄
2. 如果有記錄,則使用md5判斷用戶的密碼是否正確
3. 如果密碼正確,則看用戶是否選擇了記住密碼功能,后面用到
4. include數(shù)據(jù)庫配置文件config
5. Setcookie,里面有用戶名、密碼等
6. 重定向到frames.php文件
其中前面的幾個判斷是否的話,就要出現(xiàn)一些錯誤提示信息,并結(jié)束登錄過程,使用的是message()函數(shù)提示,前面也講過。
- PHP網(wǎng)頁游戲?qū)W習(xí)之Xnova(ogame)源碼解讀(十四)
- PHP網(wǎng)頁游戲?qū)W習(xí)之Xnova(ogame)源碼解讀(十三)
- PHP網(wǎng)頁游戲?qū)W習(xí)之Xnova(ogame)源碼解讀(十二)
- PHP網(wǎng)頁游戲?qū)W習(xí)之Xnova(ogame)源碼解讀(十一)
- PHP網(wǎng)頁游戲?qū)W習(xí)之Xnova(ogame)源碼解讀(十)
- PHP網(wǎng)頁游戲?qū)W習(xí)之Xnova(ogame)源碼解讀(五)
- PHP網(wǎng)頁游戲?qū)W習(xí)之Xnova(ogame)源碼解讀(三)
- PHP網(wǎng)頁游戲?qū)W習(xí)之Xnova(ogame)源碼解讀(二)
- PHP網(wǎng)頁游戲?qū)W習(xí)之Xnova(ogame)源碼解讀(一)
- PHP網(wǎng)頁游戲?qū)W習(xí)之Xnova(ogame)源碼解讀(十五)
相關(guān)文章
PHP通過bypass disable functions執(zhí)行系統(tǒng)命令的方法匯總
這篇文章主要介紹了PHP通過bypass disable functions執(zhí)行系統(tǒng)命令的方法匯總,需要的朋友可以參考下2018-05-05
如何使用PHP Embed SAPI實現(xiàn)Opcodes查看器
這篇文章主要介紹了如何使用PHP Embed SAPI實現(xiàn)Opcodes查看器的相關(guān)資料,需要的朋友可以參考下2015-11-11
Thinkphp5.0 框架視圖view的比較標(biāo)簽用法分析
這篇文章主要介紹了Thinkphp5.0 框架視圖view的比較標(biāo)簽用法,結(jié)合實例形式分析了thinkPHP5框架eq、equal、neq、notequal、egt及switch、range、between等標(biāo)簽相關(guān)用法,需要的朋友可以參考下2019-10-10
在TP5數(shù)據(jù)庫中四個字段實現(xiàn)無限分類的示例
今天小編就為大家分享一篇在TP5數(shù)據(jù)庫中四個字段實現(xiàn)無限分類的示例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-10-10
PHP+Jquery與ajax相結(jié)合實現(xiàn)下拉淡出瀑布流效果【無需插件】
這篇文章主要介紹了PHP+Jquery與ajax相結(jié)合實現(xiàn)下拉淡出瀑布流效果【無需插件】的相關(guān)資料,需要的朋友可以參考下2016-05-05
解決windows上php xdebug 無法調(diào)試的問題
這篇文章主要介紹了解決windows上php xdebug 無法調(diào)試的問題,本文分步驟給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下2020-02-02

