(http://s017.radikal.ru/i420/1604/6f/f1006c772523.jpg)
Урок №1 (7 шагов)
ВНИМАНИЕ ;персонажи заработают только после выполнения всех 7-ми шагов !Советуем применять урок на копиях файлов !
"Новые персонажи"
Для первого шага нам нужен файл _farm.php
У нас было 5 персонажей мы добавим в примере еще 3 .
Находим в данном файле вот такие строчки и нужно сделать так :
Для просмотра скрытого текста нужна регистрация.
Итак мы прописали новые фрукты, но их теперь нужно вывести на страницу, для этого ищем вот похожие строчки в этом же файле и добавляем наши новые персонажи:
Для просмотра скрытого текста нужна регистрация.
Для второго шага нам нужен файл _store.php
Находим похожие строчки и делаем вот так:
Для просмотра скрытого текста нужна регистрация.
Далее ищем вот такие строки и добавляем как здесь :
Для просмотра скрытого текста нужна регистрация.
Находим похожее и делаем вот так :
Для просмотра скрытого текста нужна регистрация.
Теперь начнем работу с файлом _market.php
Ищем похожее и делаем точно так же как здесь :
Для просмотра скрытого текста нужна регистрация.
Далее находим и делаем как здесь :
Для просмотра скрытого текста нужна регистрация.
Для четвертого шага нам нужен файл _users.php
Находим похожие строчки и делаем так :
Для просмотра скрытого текста нужна регистрация.
Далее ищем и делаем так :
Для просмотра скрытого текста нужна регистрация.
Для пятого шага нам нужен файл _stats.php
Находим и делаем так :
Для просмотра скрытого текста нужна регистрация.
Ищем и делаем так :
Для просмотра скрытого текста нужна регистрация.
На этом мы закончили работу с шагом 5 !
Для шестого шага нам нужен файл _config.php
Находим и делаем так :
Для просмотра скрытого текста нужна регистрация.
Далее ищем и делаем так :
Для просмотра скрытого текста нужна регистрация.
Находим и делаем как здесь:
Для просмотра скрытого текста нужна регистрация.
Находим и делаем как здесь :
Для просмотра скрытого текста нужна регистрация.
Для седьмого шага нам нужны файлы бд, а конкретно db_config , db_sell_items , db_users_b
Берем наши таблицы и делаем вот так :
Для просмотра скрытого текста нужна регистрация.
(https://pp.vk.me/c621228/v621228321/21cd5/aPyzoNiH-z8.jpg)
Урок №2
Советуем применять урок на копиях файлов !
"Делаем бонусы сами , с заглушками и таймером !"
Итак , в связи с тем что мне задают вопросы по бонусам решил написать данный пост.
Для примера мы возьмем стандартный ежедневный бонус и на его основе будем делать свои бонусы, такие какие вы сами захотите.
Скачать "Стандартный Ежедневный бонус" (http://q32.pw/mwJ)
Теперь давайте разберемся что же нам нужно сделать, что бы создать свой бонус.
Для начала откроем файл _bonus.php , собственно все операции в нем и происходят.
Итак , для примера мы сделаем бонус каждые 5 минут, для этого ищем в нашем файле вот такие строчки, и переделываем под нужное нам время (в нашем примере - каждые 5 минут) :
Для просмотра скрытого текста нужна регистрация.
Итак , с названием бонуса и суммой выдачи мы разобрались. Теперь оформим саму страницу с бонусом, заполним описание и условия выдачи бонуса.Для этого ищем такие вот строчки и переделываем под наш пример :
Для просмотра скрытого текста нужна регистрация.
Описание и условия сделаны ,теперь нам нужно задать время (в нашем примере 5 минут) и вписать запрос в базу данных (мы ее создадим чуть позже, сейчас просто придумаем ее название, в нашем примере мы ее назвали db_black_bonus_5min). Для этого ищем такие строки :
Для просмотра скрытого текста нужна регистрация.
Итак , время заданно,суммы выдачи тоже, запрос в базу данных мы прописали , осталось сделать еще один запрос в базу данных для вывода списка последних 20 пользователей которые получили бонус . Для этого ищем данные строчки и изменяем запрос в бд на свой (db_black_bonus_5min) :
Для просмотра скрытого текста нужна регистрация.
Ну вот , наш бонус готов . Осталось сделать таблицу для базы данных, для этого мы берем таблицу из "Ежедневного бонуса" и переделываем ее как показано в примере:
Для просмотра скрытого текста нужна регистрация.
Заливаем файл на сервер, таблицу в базу данных, прописываем пути к файлам для вывода на странице, и радуемся !
Наш бонус готов но мы его можем усовершенствовать, к примеру откроем доступ к нему только тем кто пополнил баланс на 10 рублей . Для этого ищем такие строчки и делаем так:
Для просмотра скрытого текста нужна регистрация.
Далее ищем и делаем так:
Для просмотра скрытого текста нужна регистрация.
Как видите ничего сложного, давайте рассмотрим другой пример. Ограничим доступ к бонусу по количеству фруктов .
Для просмотра скрытого текста нужна регистрация.
Как думаете , нужен вам таймер обратного отсчета? Да ? Тогда читаем дальше , находим вот такие строчки :
Для просмотра скрытого текста нужна регистрация.
И делаем вот так :
Для просмотра скрытого текста нужна регистрация.
В таймере ничего менять не нужно, он сам определяет время до появления кнопки бонуса, независимо от выставленного времени , тоесть если в бонусе стоит 5 минут значит будет отсчет времени на 5 минут, если на 24 часа значит отсчет начнется на 24 часа.
На этом урок закончен, выражаю благодарность пользователю DenisKT (http://old.svalka-58.ru/index.php?action=profile;u=1518) за представленный код таймера.
Надеюсь я вам помог разобраться и узнать что то новое.! До новых встреч
(https://pp.vk.me/c621724/v621724321/17049/SBqjDDsX5Ls.jpg)
Урок №3
в режиме идеи .........
есть вопрос на счет таймера для выплат
<div id="content">
<h2>Заказ выплаты</h2>
<BR />
<?PHP
$_OPTIMIZATION["title"] = "Аккаунт - Заказ выплаты";
$usid = $_SESSION["user_id"];
$usname = $_SESSION["user"];
$db->Query(" SELECT id FROM db_credit WHERE fromm = '$usname' ");
if($db->NumRows() > 0) die("<font color=\"red\"><center>Выплаты недоступны до погашения кредита</center></font>");
$db->Query("SELECT * FROM users_002 WHERE id = '$usid' LIMIT 1");
$user_data = $db->FetchArray();
$db->Query("SELECT * FROM cnfg_admn WHERE id = '1' LIMIT 1");
$sonfig_site = $db->FetchArray();
$db->Query("SELECT * FROM db_payment WHERE user_id = '$usid' ORDER BY id DESC LIMIT 1");
$sonfig_purse = $db->FetchArray();
$db->Query("SELECT count(*) FROM db_payment WHERE user_id = '$usid' ORDER BY id DESC LIMIT 1");
$sonfig_purs = $db->FetchRow();
#кошель
$db->Query("SELECT * FROM conf_u WHERE user_id = '$usid'");
$us_inf = $db->FetchArray();
#пароль
$db->Query("SELECT * FROM conf_parol_p WHERE user_id = '$usid'");
$us_inf_p = $db->FetchArray();
$db->Query("SELECT count(*) FROM conf_u WHERE user_id = '$usid'");
$us_inf_c = $db->FetchRow();
$status_array = array( 0 => "Проверяется", 1 => "Выплачивается", 2 => "Отменена", 3 => "Выплачено");
$db->Query("SELECT * FROM db_payment WHERE user_id = '$usid' order by id DESC LIMIT 1");
$frompayments = $db->FetchArray();
# Минималка серебром!
$minPay = 1;
#Максималка серебром
$maxPay = 1000;
# Настраиваем кол-во суток для ограничения.
$nd_timer = 1;
$maxforonepay = 10.05*$sonfig_site["ser_per_wmr"]*$user_data["insert_sum"] + 1.03*$user_data["from_referals"];
?>
<center><img src="/img/logo.png"><p></center>
<b>Выплаты осуществляются в автоматическом режиме на платежную систему PAYEER! Процент при выводе составляет 0%</b> <BR /><BR />
<b>Из платежной системы Payeer Вы можете вывести свои средства в автоматическом режиме на все известные платежные системы и международные банки.</b><BR /><BR />
<b>Выплаты можно заказывать раз в 24 часа, так же за один раз можно будить вывести максимум 1000 руб.</b><BR /><BR />
<?PHP
# Заглушка от халявщиков
if($user_data["insert_sum"] <= 49.99){
?>
<br><br><center><font color="blue"><b>Выплату могут заказывать пользователи, пополнившие баланс не менее чем на 50 руб!<b></font></center><BR />
<?PHP
return;
}
?>
<?PHP
# Заглушка привязки кошелька
if($us_inf_c == '0' ){
?>
<br><br><center><font color="blue"><b>Для осуществления выплат необходимо привязать кошелек к аккаунту, сделать это можно в настройках.<b></font></center><BR />
<?PHP
return;
}
?>
<center><b>Заказ выплаты:</b></center><BR />
<?PHP
$ddel = time() + 60*60*1;
$dadd = time();
function ViewPurse($purse){
if( substr($purse,0,1) != "P" ) return false;
if( !ereg("^[0-9]{7,8}$", substr($purse,1)) ) return false;
return $purse;
}
# Проверка на дату выплаты
//$db->Query("SELECT COUNT(*) FROM db_pay_dat WHERE user_id = '$usid' AND date_del > '$dadd'");
// if($db->FetchRow() == 0){
echo "$purse $sum";
# Заносим выплату
if(isset($_POST["purse"])){
$purse = ViewPurse($_POST["purse"]);
$sum = intval($_POST["sum"]);
$val = "RUB";
$p_password = $func->IsPassword($_POST["p_pass"]);
if ($sum <= $maxPay){
if($purse !== false){
if($sum >= $minPay){
//проверяем чтобы кошелек, на который платили раньше был таким же как сейчас для выплат
if ($us_inf["pay_purse"] == $purse)
{
//проверяем платежный пароль
if ($us_inf_p["pay_pass"] == $p_password)
{
if($sum <= $user_data["money_p"]){
if($sum <= $maxforonepay) {
# Проверяем на существующие заявки
$db->Query("SELECT COUNT(*) FROM db_payment WHERE user_id = '$usid' AND (status = '0' OR status = '1')");
if($db->FetchRow() == 0){
### Устанавливаем лимит на 24 часа по выплатам для $USID
if ($frompayments["date_add"] <= time() - $nd_timer * 86400)
{
$time1 = $frompayments['date_add'] ;
$hours = floor($time1/3600);
floor($minutes =($time1/3600 - $hours)*60);
$seconds = ceil(($minutes - floor($minutes))*60);
$min=ceil($minutes)-1;
### Делаем выплату ###
$payeer = new rfs_payeer($config->AccountNumber, $config->apiId, $config->apiKey);
if ($payeer->isAuth())
{
$arBalance = $payeer->getBalance();
if($arBalance["auth_error"] == 0)
{
$sum_pay = round( ($sum / $sonfig_site["ser_per_wmr"]), 2);
$balance = $arBalance["balance"]["RUB"]["DOSTUPNO"];
if( ($balance) >= ($sum_pay)){
$arTransfer = $payeer->transfer(array(
'curIn' => 'RUB', // счет списания
'sum' => $sum_pay, // сумма получения
'curOut' => 'RUB', // валюта получения
'to' => $purse, // получатель (email)
//'to' => '+71112223344', // получатель (телефон)
//'to' => 'P1000000', // получатель (номер счета)
'comment' => iconv('windows-1251', 'utf-8', "Выплата пользователю {$usname} с проекта ")
//'anonim' => 'Y', // анонимный перевод
//'protect' => 'Y', // протекция сделки
//'protectPeriod' => '3', // период протекции (от 1 до 30 дней)
//'protectCode' => '12345', // код протекции
));
if (!empty($arTransfer["historyId"]))
{
# Снимаем с пользователя
$db->Query("UPDATE users_002 SET money_p = money_p - '$sum' WHERE id = '$usid'");
# Вставляем запись в выплаты
$da = time();
$dd = $da + 60*60*24*15;
$ppid = $arTransfer["historyId"];
$db->Query("INSERT INTO db_payment (user, user_id, purse, sum, valuta, serebro, payment_id, date_add, status)
VALUES ('$usname','$usid','$purse','$sum_pay','RUB', '$sum','$ppid','".time()."', '3')");
$db->Query("UPDATE users_002 SET payment_sum = payment_sum + '$sum_pay' WHERE id = '$usid'");
$db->Query("UPDATE db_stats SET all_payments = all_payments + '$sum_pay' WHERE id = '1'");
# заносим защиту от большой выплаты и дату
//$db->Query("INSERT INTO db_pay_dat (user, user_id, sum, date_add, date_del) VALUES ('$uname','$usid','$sum','$dadd','$ddel')");
# Случайная очистка устаревших записей
//$db->Query("DELETE FROM db_pay_dat WHERE date_del < '$dadd'");
echo "<center><font color = 'green'><b>Средства успешно выплачены!</center><BR />";
}
else
{
echo "<center><font color = 'red'><b>Внутренняя ошибка - сообщите о ней администратору!</b></font></center><BR />";
}
}else echo "<center><font color = 'red'><b>Внутренняя ошибка - сообщите о ней администратору!</b></font></center><BR />";
}else echo "<center><font color = 'red'><b>Не удалось выплатить! Попробуйте позже</b></font></center><BR />";
}else echo "<center><font color = 'red'><b>Не удалось выплатить! Попробуйте позже</b></font></center><BR />";
}else echo "<center><font color = 'red'><b>Вы уже получали выплату за последние 24 часа. <br> <br> Выплата будет доступно через <b>$hours:$min:$seconds</b></font></center>";
}else echo "<center><font color = 'red'><b>У вас имеются необработанные заявки. Дождитесь их выполнения.</b></font></center><BR />";
}else echo "<center><font color = 'red'><b>Вы не можете вывести столько средств за один раз [<a href='/limit'>Почему ?</a>] !</b></font></center><BR />";
}else echo "<center><font color = 'red'><b>Вы указали больше, чем имеется на вашем счету</b></font></center><BR />";
}else echo "<center><b><font color = 'red'>Платежный пароль введен не верно!</font></b></center><BR />";
}else echo "<center><b><font color = 'red'>Кошелек, который Вы указали не соответствует привязанному!</font></b></center><BR />";
}else echo "<center><b><font color = 'red'>Что-то пошло не так =(</font></b></center><BR />";
}else echo "<center><b><font color = 'red'>Кошелек Payeer указан неверно! Смотрите образец!</font></b></center><BR />";
}else echo "<center><font color = 'red'><b>Вы можете заказать выплату не более, чем на 1000 рублей!</b></font></center><BR />";
}
// }else echo "<center><font color = 'red'><b>Выплаты можно осуществлять не более, чем один раз в час</b></font></center><BR />";
?>
<form action="" method="post">
<table width="99%" border="0" align="center">
<tr>
<td><font color="#000;">Введите кошелек Payeer [Пример: P1112457]</font>: </td>
<td><input type="text" name="purse" size="15"/></td>
</tr>
<tr>
<td><font color="#000;">Отдаете руб. для вывода</font> [Мин. 1]<font color="#000;">:</font> </td>
<td><input type="text" name="sum" id="sum" value="<?=round($user_data["money_p"]); ?>" size="15" onkeyup="PaymentSum();" /></td>
</tr>
<tr>
<td><font color="#000;">Получаете <span id="res_val"></span></font><font color="#000;">:</font> </td>
<td>
<input type="text" name="res" id="res_sum" value="0" size="15" disabled="disabled"/>
<input type="hidden" name="per" id="RUB" value="<?=$sonfig_site["ser_per_wmr"]; ?>" disabled="disabled"/>
<input type="hidden" name="per" id="min_sum_RUB" value="0.5" disabled="disabled"/>
<input type="hidden" name="val_type" id="val_type" value="RUB" />
</td>
</tr>
<tr>
<td><font color="#000;">Платежный пароль (устанавливается в настройках):</font></td>
<td><input type="password" size="15" name="p_pass"</td>
</tr>
<tr>
<td colspan="2" align="center"><input type="submit" name="swap" value="Заказать выплату" style="height: 30px; margin-top:10px;" /></td>
</tr>
</table>
</form>
<script language="javascript">PaymentSum(); SetVal();</script>
<table cellpadding='3' cellspacing='0' border='0' bordercolor='#336633' align='center' width="99%">
<tr>
<td colspan="5" align="center"><h4>Последние 10 выплат</h4></td>
</tr>
<tr>
<td align="center" bgcolor="#682d38">Руб.</td>
<td align="center" bgcolor="#682d38">Получаете</td>
<td align="center" bgcolor="#682d38">Кошелек</td>
<td align="center" bgcolor="#682d38">Дата</td>
<td align="center" bgcolor="#682d38">Статус</td>
</tr>
<?PHP
$db->Query("SELECT * FROM db_payment WHERE user_id = '$usid' ORDER BY id DESC LIMIT 20");
if($db->NumRows() > 0){
while($ref = $db->FetchArray()){
?>
<tr class="htt">
<td align="center"><?=$ref["serebro"]; ?></td>
<td align="center"><?=sprintf("%.2f",$ref["sum"] - $ref["comission"]); ?> <?=$ref["valuta"]; ?></td>
<td align="center"><?=$ref["purse"]; ?></td>
<td align="center"><?=date("d.m.Y",$ref["date_add"]); ?></td>
<td align="center"><?=$status_array[$ref["status"]]; ?></td>
</tr>
<?PHP
}
}else echo '<tr><td align="center" colspan="5">Нет записей</td></tr>'
?>
</table>
</div>
почему не работает?
выводится вот этой строчке:
}else echo "<center><font color = 'red'><b>Вы уже получали выплату за последние 24 часа. <br> <br> Выплата будет доступно через <b>$hours:$min:$seconds</b></font></center>";