[web] L2top голосование
5 ответов223 просмотровСейчас просматривают: 1
· 02.04.2009, 08:50
всем привет
такая проблема скачал скрипт который даёт бонусы за голосование l2top
_http://s2.dump.ru/file_download/MTQ2NDUwNjo6MTIzODY1OTUwODo6OTUuMzcuMTg1LjE4OQ==
а куда и как ставить дапереть не могу подскажите плиз и если можно поподробнее
с меня спасибо всем
сайт стоит на DLE движке
0
· 02.04.2009, 09:31
Открытые ссылки на сторонние ресурсы запрещены!
На первый раз устное предупреждение.
0
· 02.04.2009, 09:39
Какая у тебя сборка?
Смотри на запросы так как возможно модуль делался под другую сборку и запросы не совподают названию сталбцов!
И выложи посносью код L2top.php не охото качать)
0
· 02.04.2009, 10:06
Этот твой скрипт не подойдёт для DLE вот держи для DLE модуль:
www\engine\lineage\l2top.php
Цитата
<?
if(!isset($_POST['name'])){
$l2top = "<form method=\"post\" action=".$PHP_SELF."?do=lineage&module=l2top>";
$l2top.= "Выберите сервер: ";
for ($i=0;$i<$la2config["gameserver"]["count"];$i++) {
if ($la2config["gameserver"][$i]["hide"]==false) {
$servers[$i] = $la2config["gameserver"][$i]["title"];
}
}
$l2top.= echo_select2("server",$servers,$_serv)."<br />";
$l2top.= "
Введите ваш ник:
<input type=\"text\" name=\"name\">
<input type=\"hidden\" name=\"action\" value=\"start\">
<p><input type=\"submit\" name=\"L2TOP\" value=\"Получить бонус\"></p>
</form>";
}else{
$bonus_id=4037; // ID вещи которую зачисляем игроку как бонус за голосование | По умолчанию 4037 - Festival Adena
$cols_for_vote=100; // Колличество зачисляемых вещей за одно голосование
$id_l2top=6493; // Ваш ID в рейтинге L2Top
$host='127.0.0.1'; // сервер на котором установлена база данных L2J
$user='root'; // имя пользователя от базы данный
$pass='root'; // пароль пользователя от базы данный
$db='l2jdb'; // название базы данных
$mc = mysql_connect($host, $user, $pass);
if($mc){
$db = mysql_select_db ($db);
}
if(!$mc || !$db){
echo 'Нет соединения с базой данных.';
exit;
}
$name=mysql_escape_string($_POST['name']);
$ch=mysql_query("SELECT obj_Id FROM characters WHERE char_name = '$name';");
$chd=mysql_fetch_assoc($ch);
$char_id=$chd['obj_Id'];
$total=0;
$your_ip = $_SERVER['REMOTE_ADDR'];
$dip=explode('.',$your_ip);
$your_ip1 = $dip[0].'.'.$dip[1].'.'.$dip[2].'.'.$dip[3].'';
$html = @file_get_contents('http://l2top.ru/?servID='.$id_l2top.'&act=info');
if (!$html || !preg_match_all('/<td>([^<]+)<\/td>/', $html, $matches))
$error .= 'Не удалось получить информацию с L2Top.ru!<br/>';
else
{
foreach ($matches[1] as $id => $nick)
{
if (strtolower(trim($nick))==strtolower(trim($name))) {
$voters[] = $matches[1][$id-2];
}
}
if ($voters != array())
{
foreach ($voters as $time)
{
$result = mysql_query("SELECT * FROM `l2top` WHERE `nick` = '".mysql_escape_string($name)."' AND `time` = '".mysql_escape_string($time)."'");
$row = mysql_fetch_assoc($result);
if ($row == array())
{
$result = mysql_query("SELECT * FROM `items` WHERE `owner_id` = ".mysql_escape_string($char_id)." AND `item_id` = 4037");
$row = mysql_fetch_assoc($result);
if ($row == array())
{
$result = mysql_query("SELECT MAX(`object_id`)+1 AS `id` FROM `items`");
$row = mysql_fetch_assoc($result);
$ins_id = $row['id'];
mysql_query("INSERT INTO `items` (`owner_id`, `object_id`, `item_id`, `count`, `enchant_level`, `loc`, `loc_data`, `price_sell`, `price_buy`, `time_of_use`, `custom_type1`, `custom_type2`, `mana_left`)
VALUES(".mysql_escape_string($char_id).", ".$ins_id.", ".$bonus_id.", ".$cols_for_vote.", 0, 'INVENTORY', 0, 0, 0, NULL, 0, 0, -1)");
}
else
mysql_query("UPDATE `items` SET `count` = `count` + ".$cols_for_vote." WHERE `owner_id` = ".mysql_escape_string($char_id)." AND `item_id` = 4037");
mysql_query("INSERT INTO `l2top` (`nick`, `ip`, `time`) VALUES ('".$name."', '".mysql_escape_string($your_ip1)."', '".mysql_escape_string($time)."')");
$total += $cols_for_vote;
$error .= 'Бонус за '. $time.' выдан.<br/>';
}
else
$error .= 'Бонус за '. $time.' уже был выдан.<br/>';
}
}
else
$error .= 'Ваш голос на сайте L2Top.ru не найден.<br>';
}
$error .'<br><b>'.$total.'</b> Festival Adena зачислено чару с ником <strong>'.$name.'</strong><br/>';
$error1 = '<br><b>'.$total.'</b> Festival Adena зачислено чару с ником <strong>'.$name.'</strong><br/>';
}
$tpl->load_template($tpldir.'/lineage/l2top.tpl');
$tpl->set('{link}', $l2top);
$tpl->set('{error}', $error);
$tpl->set('{result}', $result);
$tpl->set('{total}', $total);
$tpl->set('{FA}', $error1);
$tpl->compile('lineage');
$lineage = $tpl->result["lineage"];
$tpl->clear();
?>
if(!isset($_POST['name'])){
$l2top = "<form method=\"post\" action=".$PHP_SELF."?do=lineage&module=l2top>";
$l2top.= "Выберите сервер: ";
for ($i=0;$i<$la2config["gameserver"]["count"];$i++) {
if ($la2config["gameserver"][$i]["hide"]==false) {
$servers[$i] = $la2config["gameserver"][$i]["title"];
}
}
$l2top.= echo_select2("server",$servers,$_serv)."<br />";
$l2top.= "
Введите ваш ник:
<input type=\"text\" name=\"name\">
<input type=\"hidden\" name=\"action\" value=\"start\">
<p><input type=\"submit\" name=\"L2TOP\" value=\"Получить бонус\"></p>
</form>";
}else{
$bonus_id=4037; // ID вещи которую зачисляем игроку как бонус за голосование | По умолчанию 4037 - Festival Adena
$cols_for_vote=100; // Колличество зачисляемых вещей за одно голосование
$id_l2top=6493; // Ваш ID в рейтинге L2Top
$host='127.0.0.1'; // сервер на котором установлена база данных L2J
$user='root'; // имя пользователя от базы данный
$pass='root'; // пароль пользователя от базы данный
$db='l2jdb'; // название базы данных
$mc = mysql_connect($host, $user, $pass);
if($mc){
$db = mysql_select_db ($db);
}
if(!$mc || !$db){
echo 'Нет соединения с базой данных.';
exit;
}
$name=mysql_escape_string($_POST['name']);
$ch=mysql_query("SELECT obj_Id FROM characters WHERE char_name = '$name';");
$chd=mysql_fetch_assoc($ch);
$char_id=$chd['obj_Id'];
$total=0;
$your_ip = $_SERVER['REMOTE_ADDR'];
$dip=explode('.',$your_ip);
$your_ip1 = $dip[0].'.'.$dip[1].'.'.$dip[2].'.'.$dip[3].'';
$html = @file_get_contents('http://l2top.ru/?servID='.$id_l2top.'&act=info');
if (!$html || !preg_match_all('/<td>([^<]+)<\/td>/', $html, $matches))
$error .= 'Не удалось получить информацию с L2Top.ru!<br/>';
else
{
foreach ($matches[1] as $id => $nick)
{
if (strtolower(trim($nick))==strtolower(trim($name))) {
$voters[] = $matches[1][$id-2];
}
}
if ($voters != array())
{
foreach ($voters as $time)
{
$result = mysql_query("SELECT * FROM `l2top` WHERE `nick` = '".mysql_escape_string($name)."' AND `time` = '".mysql_escape_string($time)."'");
$row = mysql_fetch_assoc($result);
if ($row == array())
{
$result = mysql_query("SELECT * FROM `items` WHERE `owner_id` = ".mysql_escape_string($char_id)." AND `item_id` = 4037");
$row = mysql_fetch_assoc($result);
if ($row == array())
{
$result = mysql_query("SELECT MAX(`object_id`)+1 AS `id` FROM `items`");
$row = mysql_fetch_assoc($result);
$ins_id = $row['id'];
mysql_query("INSERT INTO `items` (`owner_id`, `object_id`, `item_id`, `count`, `enchant_level`, `loc`, `loc_data`, `price_sell`, `price_buy`, `time_of_use`, `custom_type1`, `custom_type2`, `mana_left`)
VALUES(".mysql_escape_string($char_id).", ".$ins_id.", ".$bonus_id.", ".$cols_for_vote.", 0, 'INVENTORY', 0, 0, 0, NULL, 0, 0, -1)");
}
else
mysql_query("UPDATE `items` SET `count` = `count` + ".$cols_for_vote." WHERE `owner_id` = ".mysql_escape_string($char_id)." AND `item_id` = 4037");
mysql_query("INSERT INTO `l2top` (`nick`, `ip`, `time`) VALUES ('".$name."', '".mysql_escape_string($your_ip1)."', '".mysql_escape_string($time)."')");
$total += $cols_for_vote;
$error .= 'Бонус за '. $time.' выдан.<br/>';
}
else
$error .= 'Бонус за '. $time.' уже был выдан.<br/>';
}
}
else
$error .= 'Ваш голос на сайте L2Top.ru не найден.<br>';
}
$error .'<br><b>'.$total.'</b> Festival Adena зачислено чару с ником <strong>'.$name.'</strong><br/>';
$error1 = '<br><b>'.$total.'</b> Festival Adena зачислено чару с ником <strong>'.$name.'</strong><br/>';
}
$tpl->load_template($tpldir.'/lineage/l2top.tpl');
$tpl->set('{link}', $l2top);
$tpl->set('{error}', $error);
$tpl->set('{result}', $result);
$tpl->set('{total}', $total);
$tpl->set('{FA}', $error1);
$tpl->compile('lineage');
$lineage = $tpl->result["lineage"];
$tpl->clear();
?>
\www\templates\твой шаблон\lineage\l2top.tpl
Цитата
<head>
<style>
.news {
color: #986655;
font-size: 11px; /* ! */
font-family: tahoma; /* ! */
text-align: justify;
}
.news a {
color: #986655;
text-decoration: underline;
</style>
</head>
<div align="center">
<table width="521" height="230">
<tr>
<td width="511" height="219" class="news">
<left>
Добро пожаловать на страницу "Получение бонуса за Голосование". Мы очень хотим, что бы наш сервер развивался, поэтому поощраяем наших игроков за голосование. Что бы получить "100 Gold Lionna", вам надо:<br>
1. Проголосуйте на {link}.<br>
2. Внизу введите имя своего чара на сервере и нажмите кнопку "Получить 100 Gold Lionna".<br>
3. Если все пройдет успешно - вы получите бонус!<br><br>
P.S. Если же вы не получили бонус, не спешите доставать ГМ. Убедитесь, что ваш IP адресс и ник присутствует на странице L2Top. Удачи....
</left>
</td>
</tr>
<tr>
<td class="news">
<div align="center">{l2top}<br>{error}</div>
</td>
</tr>
</table>
</div>
<style>
.news {
color: #986655;
font-size: 11px; /* ! */
font-family: tahoma; /* ! */
text-align: justify;
}
.news a {
color: #986655;
text-decoration: underline;
</style>
</head>
<div align="center">
<table width="521" height="230">
<tr>
<td width="511" height="219" class="news">
<left>
Добро пожаловать на страницу "Получение бонуса за Голосование". Мы очень хотим, что бы наш сервер развивался, поэтому поощраяем наших игроков за голосование. Что бы получить "100 Gold Lionna", вам надо:<br>
1. Проголосуйте на {link}.<br>
2. Внизу введите имя своего чара на сервере и нажмите кнопку "Получить 100 Gold Lionna".<br>
3. Если все пройдет успешно - вы получите бонус!<br><br>
P.S. Если же вы не получили бонус, не спешите доставать ГМ. Убедитесь, что ваш IP адресс и ник присутствует на странице L2Top. Удачи....
</left>
</td>
</tr>
<tr>
<td class="news">
<div align="center">{l2top}<br>{error}</div>
</td>
</tr>
</table>
</div>
Сделай таблицу в базе сервера
Цитата
CREATE TABLE `l2top` (
`id` int(10) NOT NULL AUTO_INCREMENT,
`nick` varchar(30) NOT NULL,
`ip` varchar(20) NOT NULL,
`time` varchar(20) NOT NULL,
`date` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=cp1251;
`id` int(10) NOT NULL AUTO_INCREMENT,
`nick` varchar(30) NOT NULL,
`ip` varchar(20) NOT NULL,
`time` varchar(20) NOT NULL,
`date` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=cp1251;
Будут вопросы пиши помогу! ICQ: 3 9 5 6 5 8 6 0 4
0
Войдите или зарегистрируйтесь чтобы ответить


