[Help] Admins/GM

LockMU

Active Member
Joined
Sep 9, 2013
Messages
239
Reaction score
180
Здравейте съфоромници , искам да попитам и естественно ако може некой да ми помогне ! Значи , въпроса ми е , как да направя в сайта ми като направя некой GM/ADMIN да си имат собствен панел в Accounta според ранка им?! Ако е Администратор да има права от сорта на , да баннва , да блоква account , да настанява други админи / гейм мастъри да пипа по статс ресове и така нататък. Ако е Гейм Мастър да има право на , баннване на герой , и предупреждение !

ЩЕ СЪМ МНОГО БЛАГОДАРЕН АКО НЕКОЙ БУТНЕ ЕДНО РАМО :)
 

Ivailo99

Well-Known Member
Joined
Feb 17, 2011
Messages
378
Reaction score
367
Еми според моите аматьорски знания, вкарваш самите модули в контрол панела (както ти е примерно D:/Xampp/htdocs/modules/usercp/gm и D:/Xampp/htdocs/modules/usercp/admin) и не знам правиш няква функция или нещо което да търси в акаунта ако има герой с ctcode:8/16/32 (или както беше за администраторските права :D) за да се покажат опциите или нещо такова :D
 

killar4eto

Well-Known Member
Joined
Apr 11, 2009
Messages
906
Reaction score
446
Пример:
Code:
function editors($name){
$array = array("8","16","32");
$query = mssql_query("SELECT * FROM `таблицата за акаунти` WHERE memb__id='$name'") or die("Грешка в query-то!");

$row = mssql_fetch_row($query);

if(in_array($row[ctlcode], $array)){
switch($row[ctlcode]){
case 8:
include "./plugins/gm.php";
break;
case 16:
include "./plugins/admin.php";
break;
case 32:
include "./plugins/owner.php";
break;
}
}
else{
print "Нямате права за този модул!";
}

}
Това е само пример ;]
 
  • Like
Reactions: Ivailo99 and enduwe

Ivailo99

Well-Known Member
Joined
Feb 17, 2011
Messages
378
Reaction score
367
Пример:
Code:
function editors($name){
$array = array("8","16","32");
$query = mssql_query("SELECT * FROM `таблицата за акаунти` WHERE memb__id='$name'") or die("Грешка в query-то!");

$row = mssql_fetch_row($query);

if(in_array($row[ctlcode], $array)){
switch($row[ctlcode]){
case 8:
include "./plugins/gm.php";
break;
case 16:
include "./plugins/admin.php";
break;
case 32:
include "./plugins/owner.php";
break;
}
}
else{
print "Нямате права за този модул!";
}

}
Това е само пример ;]
Аз поне познал ли съм как трябва да стане? :D
 

RaFa

Team Member
Joined
Jan 24, 2009
Messages
746
Reaction score
440
Ако не се лъжа и GM-тата и администраторите имат един и същ ctlcode - 32.
В момента правя подобно нещо и съм си направил отделна колона, чрез която да се определя кой какви права има.
 

128ve980

Active Member
Joined
Dec 11, 2008
Messages
231
Reaction score
96
А аз тъй като администраторските герои не се играе с тях и при мен поне ги няма в никоя класация освен на страницата с екипа... Използвам техните ресове за определяне на правата им ;) Като най-голям резет е този с най-много права и т.н. Реших, че няма нужда от още колони и т.н.....
 

pafa7a

Well-Known Member
Joined
Jul 9, 2009
Messages
1,355
Reaction score
772
най-добрия вариант ще е просто според ника им да им определиш правата ;)
 

killar4eto

Well-Known Member
Joined
Apr 11, 2009
Messages
906
Reaction score
446
Момчета, вариaнтите са много... Може по акаунт, по герой, по код, по ранк, абе по всичко може :) дал съм един пример, ако искате някаква помощ пишете на LS... ест не прекалявайте ;] няма да ви напиша целият скрипт :) :)
 

Ivailo99

Well-Known Member
Joined
Feb 17, 2011
Messages
378
Reaction score
367
А аз тъй като администраторските герои не се играе с тях и при мен поне ги няма в никоя класация освен на страницата с екипа... Използвам техните ресове за определяне на правата им ;) Като най-голям резет е този с най-много права и т.н. Реших, че няма нужда от още колони и т.н.....
То това май е най простия вариант.
 

RaFa

Team Member
Joined
Jan 24, 2009
Messages
746
Reaction score
440
най-добрия вариант ще е просто според ника им да им определиш правата ;)
И се получават хиляда if-а.


Най-доброто решение, според мен, е да се направи отделна таблица, в която да се вкарват хората, от екипа (ръчно или автоматично) и един модул, с който да се променят правата. И натам вече кода на killar4eto.
 

MeMoS

Well-Known Member
Joined
Oct 18, 2008
Messages
620
Reaction score
494
аз използвам един масив с ключ името на акаунта и стойност левел на достъп 1,2,3,4,.... и после само сравнявам и показвам който панел искам

ето пример:
PHP:
$username = $_SESSION['username'];
$admin['memos'] = 1;
$admin['memos2'] = 2;
$admin['memos3'] = 3;

$query= mssql_fetch_row(mssql_query('SELECT memb___id FROM MEMB_INFO WHERE memb___id="'. $username.'"'));

if(in_array($query[0], $admin))
{
switch($admin[$query[0]])
{
case 1:
echo 'server owner';
break;
case 2:
echo 'administrator';
break;
default:
echo 'game master';
break;
}
}
не е тествано може да има грешки

може и така
PHP:
$username = $_SESSION['username'];
$admin['memos'] = 1;
$admin['memos2'] = 2;
$admin['memos3'] = 3;

//$query= mssql_fetch_row(mssql_query('SELECT memb___id FROM MEMB_INFO WHERE memb___id="'. $username.'"'));

if(in_array($username, $admin))
{
switch($admin[$query[0]])
{
case 1:
echo 'server owner';
break;
case 2:
echo 'administrator';
break;
default:
echo 'game master';
break;
}
}
 
Last edited: