avatar_k2proud

Как подкорректировать реферальную систему в MU Online, Веб сайты, ExEngine?

Автор k2proud, 2017 Дек. 03, 14:33

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

Ключевые слова [SEO] mu onlineресетыреферальная системаexengine

k2proud

Привет, кто подскажет как подкоректировать реф систему.

Сейчас:  "Когда ваш друг докачает хотя бы одного ресета, то вы оба получите вознаграждение."

Как изменить на больше ресет ? Может кто сталкивался, спасибо +

wwwcoreconfig.php все что есть про реф системе
Спойлер
$Referral['reward_zen'] = 0;
$Referral['reward_cred'] = 1;
$Referral['zen_count'] = '10000';
$Referral['cred_count'] = '1000';
$Referral['zen_count2'] = '10000';
$Referral['cred_count2'] = '500';
[свернуть]

wwwmodulesaccount.php
Спойлер
<?php

// Панель управления
// Автор: NexT

if(!defined('EXEngine')) {
Exit;
}

if ($_SESSION['UserName'] == true AND $Online == '0') {
$Info = $DB->FetchRow($DB->Query("SELECT CONVERT(CHAR(19), appl_days, 120),mail_addr FROM MEMB_INFO where memb___id = '".$Username."'"));
$Registered = $Info
  • ;
$Email = $Info[1];

if(isset($_POST['change'])) {
$Old = $Security->CheckWord($_POST['old']);
$New = $Security->CheckWord($_POST['new']);
$New2 = $Security->CheckWord($_POST['new2']);
$Check = $DB->FetchRow($DB->Query("SELECT [memb__pwd], [memb___id], [fpas_ques], [mail_addr] FROM [memb_info] WHERE [memb___id] = '$Username'"));

if($Web['MD5'] == 1) {
$PassDB = bin2hex($Check
  • );
$Check = $DB->Query("
declare @btInStr VARCHAR(10), @btInStrIndex VARCHAR(10);
set @btInStr = '".$Old."';
set @btInStrIndex = '".$Username."';
DECLARE @btOutVal BINARY(16)
EXEC master..XP_MD5_EncodeKeyVal @btInStr, @btInStrIndex, @btOutVal OUT;
select @btOutVal;");

$Check = $DB->FetchRow($Check);
$Entered = bin2hex($Check
  • );
}
else {
$PassDB = $Check
  • ;
$Entered = $Old;
}

if (!$Username) {
echo Message('error','Ошибка скрипта №1');
}
elseif (!$CharacterName) {
echo Message('error','Ошибка скрипта №2');
}
elseif (empty($New) OR empty($New2) OR empty($Old)) {
echo Message('error','Заполните все обязательные поля!');
}
elseif ($PassDB != $Entered) {
echo Message('warning','Неверный пароль!');
}
elseif ($Old == $New) {
echo Message('warning','Пароли должны отличатся!');
}
elseif ($New2 !== $New)  {
echo Message('warning','Пароли не совпадают!');
}
else {
if($Web['MD5'] == 1) {
$DB->Query("UPDATE dbo.MEMB_INFO SET memb__pwd = [dbo].[fn_MD5]('$New', '$Username') WHERE memb___id = '$Username'");
}
else {
$DB->Query("UPDATE dbo.MEMB_INFO SET memb__pwd = '$New' WHERE memb___id = '$Username'");
}

// Письмо
$Email = $Check[3];
$Title = "Изменение пароля";
$From =    "From: ".$Web['email'];
$Message = "Здравствуйте! Вы успешно сменили пароль.rnrn".
"Ваш логин: ".$Username."rn".
"Ваш новый пароль: ".$New." rnrn".
"Пожалуйста не отвечайте на это сообщение. Сообщение отправлено роботом, который не сможет Вам ответить.rnrn".
"С уважением, Zeon MU Online - ".$Web['adress'];
Mail($Email, $Title, $Message, $From);

echo Message('ok','Вы успешно сменили пароль! Ваш новый пароль был выслан вам на почтовый адрес.');
}
}

// Вознаграждение за приглашения
$ReferralReward = $DB->NumRows($DB->Query("SELECT memb___id FROM MEMB_INFO WHERE referral = '$Username' AND reward_ref = '1'"));
$ReferralResult = $DB->Query("SELECT memb___id,reward_ref FROM MEMB_INFO WHERE referral = '$Username'");
$ReferralNum = $DB->NumRows($ReferralResult);

if ($ReferralNum > 0) {
for ($i = 0; $i < $ReferralNum; $i++) {
$RefInfo = $DB->FetchRow($ReferralResult);

if ($RefInfo[1] <= 0) {
$ReferralChar = $DB->Query("SELECT Name,Resets FROM Character WHERE AccountID = '$RefInfo
  • '");

for ($b = 0; $b < $DB->NumRows($ReferralChar); ++$b) {
$CharResult    = $DB->FetchRow($ReferralChar);

if($CharResult[1] >= 1) {
$Reward = 1;
}
}
}

// Вознаграждение
if ($Reward == 1) {
if($Referral['reward_zen'] >= 1) {
$DB->Query("UPDATE dbo.warehouse SET [extMoney] = [extMoney] + ".$Referral['zen_count']." WHERE AccountID = '$Username'
UPDATE dbo.warehouse SET [extMoney] = [extMoney] + ".$Referral['zen_count2']." WHERE AccountID = '$RefInfo
  • '");
}

if($Referral['reward_cred'] >= 1) {
$DB->Query("UPDATE dbo.MEMB_CREDITS SET [credits] = [credits] + ".$Referral['cred_count']." WHERE memb___id = '$Username'
UPDATE dbo.MEMB_CREDITS SET [credits] = [credits] + ".$Referral['cred_count2']." WHERE memb___id = '$RefInfo
  • '");
}

$DB->Query("UPDATE MEMB_INFO SET [reward_ref] = '1' WHERE memb___id = '$RefInfo
  • '");
echo Message('ok','Вы получили вознаграждение за приглашённого игрока '.$RefInfo
  • .'.');
}
}
}

?>
<h2>Панель управления</h2>
<div align="center" style="margin:20px 0 20px 0;">
<table class="cells" style="width:100%">
<tr>
<td class="header" colspan="2">Основная информация</td>
</tr>
<tr align="left" title="Ваш логин. Изменить нельзя">
<td width="30%" style="vertical-align: middle;"><b>Логин:</b></td>
<td width="70%"><b style="color:navy;"><?=$Username;?></b></td>
</tr>
<tr align="left">
<td style="vertical-align: middle;"><b>Кредиты:</b></td>
<td><b><?=GetCredits($Username);?></b></td>
</tr>
<? if ($Currency['show'] == 1) { ?>
<tr align="left">
<td style="vertical-align: middle;"><b>WCoins:</b></td>
<td><b><?=GetCoins($Username);?></b></td>
</tr>
<? } ?>
<tr align="left">
<td valign="bottom"><b>Э-маил:</b></td>
<td><?=$Email;?></td>
</tr>
<tr>
<td colspan="2" align="left"><span class="small" style="color:#575757">Email, вопрос и ответ нужны для восстановления забытого пароля. Если вы забудете эти данные, или ввели несуществующий email, то не сможете получить доступ к своему аккаунту. В этом случае администраторы ничем не смогут вам помочь, а вы потеряете свой аккаунт.</span></td>
</tr>
<tr align="left" title="Дата регистрации">
<td valign="bottom"><b>Зарегистрирован:</b></td>
<td><?=TimeFormat($Registered,$Web['format']);?></td>
</tr>
</table>
</div>

<div align="center" style="margin:20px 0 20px 0;">
<table class="cells" style="width:100%">
<tr>
<td class="header" colspan="2">Вознаграждение за приглашения</td>
</tr>
<tr align="left">
<td width="35%" style="vertical-align: middle;"><b>Реферальная ссылка:</b></td>
<td width="65%"><b><?=$Web['adress'];?>?register=<?=$Username;?></b></td>
</tr>
<tr align="left">
<td><b>Пригласили друзей:</b></td>
<td><?=$ReferralNum;?></td>
</tr>
<tr align="left">
<td><b>Из них сделали ресет:</b></td>
<td><?=$ReferralReward;?></td>
</tr>
<tr>
<td colspan="2" align="left"><span class="small" style="color:#575757">Приглашайте своих друзей и знакомых на наш сервер MU Online и получайте за это вознаграждение! Теперь за каждого приглашенного друга вы будете получать вознаграждение. Когда ваш друг докачает хотя бы одного ресета, то вы оба получите вознаграждение.</span></td>
</tr>
</table>
</div>

<form name="chpass-form" method="post">
<div align="center" style="margin:20px 0 20px 0;">
<table class="cells" style="width:100%">
<tr>
<td class="header" colspan="2">Изменение пароля</td>
</tr>
<tr>
<td width="40%"><b>Текущий пароль</b></td>
<td width="60%"><input type="password" name="old" value="" size="20" maxlength="10" class="custom" style="width:90%"></td>
</tr>
<tr>
<td><b>Новый пароль</b></td>
<td><input type="password" name="new" value="" size="20" maxlength="10" class="custom" style="width:90%"></td>
</tr>
<tr>
<td><b>Повторите пароль</b></td>
<td><input type="password" name="new2" value="" size="20" maxlength="10" class="custom" style="width:90%"></td>
</tr>
<tr>
<td colspan="2" align="left"><span class="small" style="color:#575757">Новый пароль также будет отправлен на e-mail аккаунта, который вы указали при регистрации.</span></td>
</tr>
</table>
<p><input type="hidden" name="change" value="1"><input type="submit" class="newButton" value="Продолжить" name="chan" style="width:100%"></p>
</div>
</form>
<?php

}
else {
if ($_SESSION['UserName'] != true) {
echo Message('error','Войдите в личный кабинет, либо зарегистрируйтесь.');
}
elseif ($Online == '1') {
echo Message('error','Сначало выйдите из игры!');
}
}

?>
[свернуть]


EvgGen

Цитата: k2proud от 2017 Дек. 03, 14:33  Привет, кто подскажет как подкоректировать реф систему.

Сейчас:  "Когда ваш друг докачает хотя бы одного ресета, то вы оба получите вознаграждение."

Как изменить на больше ресет ? Может кто сталкивался, спасибо +
Думаю пока никто не увидит эту секретную систему - не помогут)

k2proud

Редактировал тему, UP

EvgGen

Думаю можно вот так попробовать:
for ($b = 0; $b < $DB->NumRows($ReferralChar); ++$b) {
$CharResult   = $DB->FetchRow($ReferralChar);

if($CharResult[1] >= $Referral['min_reset']) {
++$RewardCount;
$Reward = true;
}
}

А это в конфиг:
$Referral['min_reset']               = 10; // Ваши ресеты

Похожие темы (5)