Описание:
Купоны v.3 для DS обновленная версия первой!
author Drk
-
Запрещено продавать!
Запрещено сливать в другие ВМ и ЗЦ !
Файл adm_panel / voucher.php
Код:
<? /** * @ PACKAGE = DCMS-SOCIAL * @ AUTHOR = DARIK * @ SITE = LAFI.MOBI */ /* CORE */ include_once '../sys/inc/home.php';include_once H.'sys/inc/start.php'; include_once H.'sys/inc/compress.php';include_once H.'sys/inc/sess.php'; include_once H.'sys/inc/settings.php';include_once H.'sys/inc/db_connect.php'; include_once H.'sys/inc/ipua.php';include_once H.'sys/inc/fnc.php'; include_once H.'sys/inc/user.php';only_level(1); /* $_GET['delete'] */ if(isset($_GET['delete'])) { mysql_query("DELETE FROM `voucher` WHERE `id` = '" . intval($_GET['delete']) . "'"); $_SESSION['message'] = 'Купон успешно удален'; header("Location: ?"); exit; } /* TITLE */ $set['title'] = 'Управление купонами'; /* HEAD */ include_once H.'sys/inc/thead.php';; /* TITLE AND ERR AND AUT */ err(); title(); aut(); /* $_GET['act'] */ if(isset($_GET['act']) && $_GET['act'] == 'gen') { if(isset($_POST['save'])) { $money = htmlspecialchars($_POST['money']); $balls = htmlspecialchars($_POST['balls']); $rating = htmlspecialchars($_POST['rating']); $plus5 = htmlspecialchars($_POST['plus5']); $liders = htmlspecialchars($_POST['liders']); $reusable = htmlspecialchars($_POST['reusable']); $time_end = htmlspecialchars($_POST['time_end']); if ($plus5 > 10) $err = 'Не верно указано дней в оценки 5+'; if ($liders > 10) $err = 'Не верно указано дней в лидер сайта'; if ($reusable > 1) $err = 'Не верно указано тип купона'; if ($time_end > 10) $err = 'Не верно указано дней действия купона'; if(!isset($err)) { if ($time_end == 1 ) $time_ends = $time+86400; if ($time_end == 2 ) $time_ends = $time+172800; if ($time_end == 3 ) $time_ends = $time+259200; if ($time_end == 4 ) $time_ends = $time+345600; if ($time_end == 5 ) $time_ends = $time+432000; if ($time_end == 6 ) $time_ends = $time+518400; if ($time_end == 7 ) $time_ends = $time+604800; if ($time_end == 8 ) $time_ends = $time+691200; if ($time_end == 9 ) $time_ends = $time+777600; if ($time_end == 10 ) $time_ends = $time+864000; $array_ar = array("a", "q", "w", "e", "r"); // 5 $array_to = array("t", "y", "u", "i", "o"); //5 $array_pg = array("p", "s","d", "f", "g"); // 5 $array_hz = array("h", "j", "k", "l", "z"); // 5 $array_xm = array("x", "c", "v", "b","n", "m"); // 6 $key = $array_ar[rand(1,4)].rand(11,99).$array_to[rand(1,4)].rand(11,99).$array_pg[rand(1,4)] .rand(11,99).$array_hz[rand(1,4)].rand(11,99).$array_xm[rand(1,4)].rand(11,99); mysql_query("INSERT INTO `voucher` (`key`,`user`,`money`,`balls`,`rating`,`plus5`,`liders`,`time`,`reusable`,`time_end`) VALUES ('".$key."','".$user['id']."','".$money."','".$balls."','".$rating."','".$plus5."','".$liders."','".$time."','".$reusable."','".$time_ends."')"); $_SESSION['message'] = 'Купон успешно сгенерирован'; header("Location: ?act=gen"); exit; } } err(); echo' <div class="mess"> Здесь вы можете сгенерировать купон, для этого введите на какую сумму монет,баллов,рейтинга хотите купон.</br> Так же можно сгенерировать для услуг таких как оценка 5+ и лидерка.</br> Можно генерировать купон как на все , так и по отдельности. </div> <form class="main" method="post" action="?act=gen"> Тип купона:</br> <input name="reusable" type="radio" checked="checked" value="0"> Одноразовый</br> <input name="reusable" type="radio" value="1"> Многоразовый</br> Время действия купона: <select name="time_end"> <option value="1">1</option> <option value="2">2</option> <option value="3">3</option> <option value="4">4</option> <option value="5">5</option> <option value="6">6</option> <option value="8">8</option> <option value="9">9</option> <option value="10">10</option> </select> дней.</br> Монеты:<br /> <input type="text" name="money" maxlength="50" /><br /> Баллы:<br /> <input type="text" name="balls" maxlength="50" /><br /> Рейтинг:<br /> <input type="text" name="rating" maxlength="50" /><br /> Оценка 5+: <select name="plus5"> <option value="0">0</option> <option value="1">1</option> <option value="2">2</option> <option value="3">3</option> <option value="4">4</option> <option value="5">5</option> <option value="6">6</option> <option value="8">8</option> <option value="9">9</option> <option value="10">10</option> </select> дней.</br> Лидер сайта: <select name="liders"> <option value="0">0</option> <option value="1">1</option> <option value="2">2</option> <option value="3">3</option> <option value="4">4</option> <option value="5">5</option> <option value="6">6</option> <option value="8">8</option> <option value="9">9</option> <option value="10">10</option> </select> дней. </br> <input type="submit" name="save" value="Генерация" /> </form>'; } /* Вывод купонов */ $k_post = mysql_result(mysql_query("SELECT COUNT(*) FROM `voucher`"),0); echo' <table class="post">'; if ($k_post == 0) { echo'<div class="mess">Нет купонов</div>'; } $q = mysql_query("SELECT * FROM `voucher`"); while($act = mysql_fetch_array($q)) { /* Лесенка */ echo '<div class="' . ($num % 2 ? "nav1" : "nav2") . '">'; $num++; $key = htmlspecialchars($act['key']); $ank = get_user($act['user']); echo' <img src="/style/icons/blogi.png" alt="*"> Купон: <b style="color:red;">'.$key.'</b> <a href="?delete='.$act['id'].'"><img src="/style/icons/delete.gif" alt="*"></a> </br> Тип купона: '.($act['reusable'] == 0 ? 'Одноразовый':'Многоразовый').'</br> '.($act['time_end'] > 0 ? 'Время действия: до (' . vremja($act['time_end']) . ')</br>':'').' '.($act['money'] > 0 ? '+ '.$act['money'].' монет.</br>':'').' '.($act['balls'] > 0 ? '+ '.$act['balls'].' баллов.</br>':'').' '.($act['rating'] > 0 ? '+ '.$act['rating'].' % рейтинга.</br>':'').' '.($act['plus5'] > 0 ? '+ '.$act['plus5'].' дн. услуги оценки 5+.</br>':'').' '.($act['liders'] > 0 ? '+ '.$act['liders'].' дн. услуги лидера сайта.</br>':'').' Создал: '.group($ank['id']) . user::nick($ank['id']).medal($ank['id']) . online($ank['id']) . ' (' . vremja($act['time']) . ') '; $count = mysql_result(mysql_query("SELECT COUNT(*) FROM `voucher_user` WHERE `voucher` = '".$act['id']."'"),0); if ($count == 0) echo'</br>Не активирован'; if ($count > 0)echo'</br>Активировали:</br>'; $query = mysql_query("SELECT * FROM `voucher_user` WHERE `voucher` = '".$act['id']."'"); while($post = mysql_fetch_array($query)) { $ank2 = get_user($post['user']); echo' '.group($ank2['id']) . user::nick($ank2['id']).medal($ank2['id']) . online($ank2['id']) . ' (' . vremja($post['time']) . ') </br> '; } echo'</div>'; } echo' <div class="foot"> <img src="/style/icons/str.gif" alt="*"> <a href="?act=gen">Cгенерировать купон</a><br /> </div>'; /* FOOT */ include_once H.'sys/inc/tfoot.php'; ?>
Файл user / money / voucher.php
Код:
<? /** * @ PACKAGE = DCMS-SOCIAL * @ AUTHOR = DARIK * @ SITE = LAFI.MOBI */ /* CORE */ include_once '../../sys/inc/start.php';include_once '../../sys/inc/compress.php'; include_once '../../sys/inc/sess.php';include_once '../../sys/inc/home.php'; include_once '../../sys/inc/settings.php';include_once '../../sys/inc/db_connect.php'; include_once '../../sys/inc/ipua.php';include_once '../../sys/inc/fnc.php'; include_once '../../sys/inc/adm_check.php';include_once '../../sys/inc/user.php'; /* $_POST['key'] */ if (isset($user) && isset($_POST['key'])) { $key = htmlspecialchars($_POST['key']); $voucher = mysql_fetch_assoc(mysql_query("SELECT * FROM `voucher` WHERE `key` = '".$key."' LIMIT 1")); if (!empty($voucher)) { $money = $voucher['money']; $balls = $voucher['balls']; $rating = $voucher['rating']; $plus5 = $voucher['plus5']; $liders = $voucher['liders']; $id = $voucher['id']; $time_end = $voucher['time_end']; $reusable = $voucher['reusable']; $check = mysql_result(mysql_query("SELECT COUNT(*) FROM `voucher_user` WHERE `voucher` = '".$voucher['id']."' AND `reusable` = '0'"),0); if(empty($check)){ $checks = mysql_result(mysql_query("SELECT COUNT(*) FROM `voucher_user` WHERE `voucher` = '".$voucher['id']."' AND `reusable` = '1'"),0); if(empty($checks) || !empty($checks)){ $check_user = mysql_result(mysql_query("SELECT COUNT(*) FROM `voucher_user` WHERE `voucher` = '".$voucher['id']."' AND `user` = '".$user['id']."'"),0); if(empty($check_user)){ if ($time_end > $time){ if ($money > 0) mysql_query("UPDATE `user` SET `money` = '" . ($user['money']+$money) . "' WHERE `id` = '" . $user[id]. "' LIMIT 1"); if ($balls > 0) mysql_query("UPDATE `user` SET `balls` = '" . ($user['balls']+$balls) . "' WHERE `id` = '" . $user[id]. "' LIMIT 1"); if ($rating > 0) mysql_query("UPDATE `user` SET `rating` = '" . ($user['rating']+$rating) . "' WHERE `id` = '" . $user[id]. "' LIMIT 1"); if ($plus5 > 0){ if ($plus5 == 1 ) $time_plu5 = $time+86400; if ($plus5 == 2 ) $time_plu5 = $time+172800; if ($plus5 == 3 ) $time_plu5 = $time+259200; if ($plus5 == 4 ) $time_plu5 = $time+345600; if ($plus5 == 5 ) $time_plu5 = $time+432000; if ($plus5 == 6 ) $time_plu5 = $time+518400; if ($plus5 == 7 ) $time_plu5 = $time+604800; if ($plus5 == 8 ) $time_plu5 = $time+691200; if ($plus5 == 9 ) $time_plu5 = $time+777600; if ($plus5 == 10 ) $time_plu5 = $time+864000; mysql_query("UPDATE `user_set` SET `ocenka` = '".$time_plu5."' WHERE `id_user` = '" . $user[id]. "'"); } if ($liders > 0){ if ($liders == 1 ) $time_liders = $time+86400; if ($liders == 2 ) $time_liders = $time+172800; if ($liders == 3 ) $time_liders = $time+259200; if ($liders == 4 ) $time_liders = $time+345600; if ($liders == 5 ) $time_liders = $time+432000; if ($liders == 6 ) $time_liders = $time+518400; if ($liders == 7 ) $time_liders = $time+604800; if ($liders == 8 ) $time_liders = $time+691200; if ($liders == 9 ) $time_liders = $time+777600; if ($liders == 10 ) $time_liders = $time+864000; $msg = 'Я активировал купон от админа.'; if (mysql_result(mysql_query("SELECT COUNT(*) FROM `liders` WHERE `id_user` = '$user[id]'"), 0)==0) { mysql_query("INSERT INTO `liders` (`id_user`, `stav`, `msg`, `time`, `time_p`) values('".$user[id]."', '".$liders."', '".$msg."', '".$time_liders."', '".$time."')"); }else{ mysql_query("UPDATE `liders` SET `time` = '".$time_liders."', `time_p` = '".$time."', `msg` = '".$msg."', `stav` = '".$liders."' WHERE `id_user` = '".$user[id]."'"); } } mysql_query("INSERT INTO `voucher_user` (`reusable`,`user`, `voucher`, `key`, `money`, `balls`, `rating`, `plus5`, `liders`, `time`)values('".$reusable."','".$user[id]."', '".$id."', '".$key."', '".$money."', '".$balls."', '".$rating."', '".$plus5."', '".$liders."', '".$time."')"); $_SESSION['message'] = ' Поздравляем, вы активировали купон'; header("Location: ?"); exit; } else { $err = 'Время данного купона закончилось'; } } else { $err = 'Вы уже активировали купон'; } } } else { $err = 'Код купона уже активирован'; } } else { $err = 'Код купона указан неверно'; } } /* TITLE */ $set['title']='Активация купона'; /* HEAD */ include_once H.'sys/inc/thead.php'; /* TITLE AND ERR AND AUT */ title(); if (!isset($user))header("location: /index.php?"); err(); aut(); /* MENU */ echo "<div class='foot'> <img src='/style/icons/str2.gif' alt='*'> <a href='/info.php'>$user[nick]</a> | Активация купона <br /></div> <div class='mess'> Здесь вы можете активировать полученные купоны, введите секретный код в форму обработчика, и нажмите Активировать </div> <form class='main' method=\"post\" action=\"voucher.php\"> Cекретный код:<br /> <input type='text' name='key' value=''> <br /> <input value=\"Активировать\" type=\"submit\" /> </form> <div class='mess'> Внимание! Полученные Монеты,Баллы можно потратить, только в рамках платных услуг нашего сайта! </div> "; echo'<div class ="main">Активированные коды: </div>'; $сount = mysql_result(mysql_query("SELECT COUNT(*) FROM `voucher_user` WHERE `user` = '".$user['id']."'"),0); if ($сount == 0)echo'<div class = "nav2">Список пуст</div>'; $k_page = k_page($сount,$set['p_str']); $page = page($k_page); $start = $set['p_str'] * $page - $set['p_str']; $query = mysql_query("SELECT * FROM `voucher_user` WHERE `user` = '".$user['id']."' ORDER BY time LIMIT $start, $set[p_str]"); while ($act = mysql_fetch_assoc($query)) { echo'<div class = "nav2"> <b>Код: '.$act['key'].'</b> <span style="float: right;">(' . vremja($act['time']) . ')</span></br> '.($act['money'] > 0 ? '+ '.$act['money'].' монет.</br>':'').' '.($act['balls'] > 0 ? '+ '.$act['balls'].' баллов.</br>':'').' '.($act['rating'] > 0 ? '+ '.$act['rating'].' % рейтинга.</br>':'').' '.($act['plus5'] > 0 ? '+ '.$act['plus5'].' дн. услуги оценки 5+.</br>':'').' '.($act['liders'] > 0 ? '+ '.$act['liders'].' дн. услуги лидера сайта.</br>':'').' </div>'; } if ($k_page>1)str('?',$k_page,$page); echo" <div class='foot'>\n <img src='/style/icons/str2.gif' alt='*'> <a href='/info.php'>$user[nick]</a> | Активация купона<br />\n </div>\n"; /* FOOT */ include_once H.'sys/inc/tfoot.php'; ?>
Файл db.sql
Код:
-- phpMyAdmin SQL Dump -- version 4.7.7 -- https://www.phpmyadmin.net/ -- -- Хост: 127.0.0.1:3306 -- Время создания: Фев 28 2019 г., 06:09 -- Версия сервера: 5.6.38-log -- Версия PHP: 5.6.32 SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO"; SET AUTOCOMMIT = 0; START TRANSACTION; SET time_zone = "+00:00"; /*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */; /*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */; /*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */; /*!40101 SET NAMES utf8mb4 */; -- -- База данных: `dcms` -- -- -------------------------------------------------------- -- -- Структура таблицы `voucher` -- CREATE TABLE `voucher` ( `id` int(11) NOT NULL, `user` int(11) NOT NULL, `data` int(11) NOT NULL, `key` varchar(50) NOT NULL, `money` int(11) NOT NULL, `balls` int(11) NOT NULL, `rating` int(11) NOT NULL, `plus5` int(11) NOT NULL, `liders` int(11) NOT NULL, `time` int(11) NOT NULL, `time_data` int(11) NOT NULL, `reusable` int(11) NOT NULL, `time_end` int(11) NOT NULL ) ENGINE=Aria DEFAULT CHARSET=utf8; -- -------------------------------------------------------- -- -- Структура таблицы `voucher_user` -- CREATE TABLE `voucher_user` ( `id` int(11) NOT NULL, `user` int(11) NOT NULL, `voucher` int(11) NOT NULL, `time` int(11) NOT NULL, `key` varchar(50) NOT NULL, `money` int(11) NOT NULL, `balls` int(11) NOT NULL, `rating` int(11) NOT NULL, `plus5` int(11) NOT NULL, `liders` int(11) NOT NULL, `reusable` int(11) NOT NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8; -- -- Индексы сохранённых таблиц -- -- -- Индексы таблицы `voucher` -- ALTER TABLE `voucher` ADD PRIMARY KEY (`id`); -- -- Индексы таблицы `voucher_user` -- ALTER TABLE `voucher_user` ADD PRIMARY KEY (`id`); -- -- AUTO_INCREMENT для сохранённых таблиц -- -- -- AUTO_INCREMENT для таблицы `voucher` -- ALTER TABLE `voucher` MODIFY `id` int(11) NOT NULL AUTO_INCREMENT; -- -- AUTO_INCREMENT для таблицы `voucher_user` -- ALTER TABLE `voucher_user` MODIFY `id` int(11) NOT NULL AUTO_INCREMENT; COMMIT; /*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */; /*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */; /*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
Файл readme.txt
Код:
/** * @ PACKAGE = DCMS-SOCIAL * @ AUTHOR = DARIK * @ SITE = LAFI.MOBI */ Поздравляю с покупкой !! #1 - Залейте файлы #2 - Залейте бд называет для тех кто купил в первый раз #3 - в user/money/index.php пропишите ссылку где угодно echo "<div class='nav2'><font color='red'>→ <a href='voucher.php'><font color='red'>Активировать</font> купон </a></font></div>"; #4 - в adm_panel/index.php пропишите ссылку где угодно if ($user['level'] > 1)echo "<div class='main'><img src='/style/icons/str.gif' alt=''/> <a href='voucher.php'>Купоны</a></div>\n"; #5 - на этом все!
[marq] Большая благодарность автору.
Тем более за то что он слил в общий доступ!
[/marq]
Android 8.1.0, Chrome,70.0.3538.110