با کد امنیتی جلوگیری از ورود کاربر با چند مرورگر به چت روم

به ادامه مطلب بروید
برخی دوستان گفته بودند که برخی کاربران با یک سیستم با چند مرورگر مختلفت وارد چت روم میشوند و باعث اذیت و آزار افراد در چت روم میشوند…
با این کد امنیتی به راحتی میتونید جلوی این باگ رو بگیرید.
بریم سراغ آموزش :
بریم سراغ فایل CheckUserName.class.php موجود در پوشه class و ویرایشش کنیم.
خطوط ۱۳۶ و ۱۳۷ به صورت زیر هستش :
|
|
// Status 1 means that the loggining was sucessfull
if($userCheckerAndInserterObj->status==1)$this->messageOnEnter();
|
فقط کافیه دقیق بالای این ۲خط کد های زیر رو قرار بدید :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
|
functionget_client_ip(){
$ipaddress='';
if(@$_SERVER['HTTP_CLIENT_IP'])
$ipaddress=$_SERVER['HTTP_CLIENT_IP'];
elseif(@$_SERVER['HTTP_X_FORWARDED_FOR'])
$ipaddress=$_SERVER['HTTP_X_FORWARDED_FOR'];
elseif(@$_SERVER['HTTP_X_FORWARDED'])
$ipaddress=$_SERVER['HTTP_X_FORWARDED'];
elseif(@$_SERVER['HTTP_FORWARDED_FOR'])
$ipaddress=$_SERVER['HTTP_FORWARDED_FOR'];
elseif(@$_SERVER['HTTP_FORWARDED'])
$ipaddress=$_SERVER['HTTP_FORWARDED'];
elseif(@$_SERVER['REMOTE_ADDR'])
$ipaddress=$_SERVER['REMOTE_ADDR'];
else
$ipaddress='UNKNOWN';
return$ipaddress;
}
$getonlineips=$this->dbObj->sqlGet("select etchat_onlineip from db1_etchat_useronline");
$getnumonlineips=$this->dbObj->sqlGet("select count(etchat_onlineip) from db1_etchat_useronline");
for($i=0;$i<=$getnumonlineips[0][0];$i++){
$onlineip=explode("@",$getonlineips[$i][0]);
if($onlineip[0]==get_client_ip()){
@session_unset();
@session_destroy();
exit('nologin');
}
}
|
فایل رو ذخیره کنید و ببندید..
بعد بریم سراغ فایل login.js در پوشه js و ویرایشش کنیم.
خط ۳۳ به صورت زیر هستش :
درست بالای این خط کد های زیر رو قرار بدید :
|
|
}elseif(ajaxResult.responseText=='nologin'){
alert('Ba Chandta Esm mikhai biai to?');
|
فایل رو ذخیره کنید و ببندید..
کار تمومه……
حالا دیگه کاربر وارد چت روم بشه تا وقتی که اسمش داخل چت روم باشه با هیچ مرورگر دیگه ایی نمیتونه وارد چت روم بشه و با اخطار
افزودن به علاقهمندیها
حذف از علاقهمندی