Форум администраторов игровых серверов

Форум администраторов игровых серверов (https://forum.zone-game.info/TT.php)
-   PHP (https://forum.zone-game.info/forumdisplay.php?f=125)
-   -   Скрипт поощрения за голосования и 4 сервера. (https://forum.zone-game.info/showthread.php?t=2834)

Viktorez 01.02.2009 04:00

Скрипт поощрения за голосования и 4 сервера.
 
Помогите плиз с топом он у мея све работает норм тока вот какая штука у меня 4 сервера и 4 базы - вот что надо добавить в скрипт чтобы читало ники проголосовавших со всех баз ????

PHP код:

<?

if(!isset($_POST['name'])){
$l2top_id=; // Ваш ID в рейтинге L2Top
?>
<div align="center"><b>Здесь вы можете принять участие в акции «Бонус за голосование».<br>

Для этого необходимо:</b><br>

1. Проголосовать за наш сервер в рейтинге L2top.ru: <a href="http://l2top.ru/?voteme=<?php echo"$l2top_id";?>">
<img src="core/cont_img/l2top.png"></a><br>

2. Получить бонус. Для чего необходимо:<br>
Вписать в форму ниже ник вашего чара
(не путайте с названием аккаунта), ну и нажать кнопку :)<br>
После этого вашему чару в инвентарь будет выдано поощрение
«Фестиваль Адена» в количестве 1 шт.<br>
Чтобы получить бонус ваш ник должен быть в <a href="http://l2top.ru/?servID=<?php echo"$l2top_id"?>&act=info"><b>этом списке</b></a><br><br>
<?
echo '<form action="" method="post">';


echo 
'Ник персонажа<br/>
<input type="text" name="name"/><br/><br/>
<input type="submit" value="Получить бонус"/>

</form></div>'
;


}else{

$bonus_id=6673;     // ID предмета-бонуса (по умолчанию Festival Adena)
$cols_for_vote=1// Колличество зачисляемых вещей за одно голосование
$id_l2top=Ляля// Ваш ID в рейтинге L2Top

$host='для примера'// сервер на котором установлена база данных L2J
$user='root'// имя пользователя от базы данный
$pass='ляля'// пароль пользователя от базы данный
$db='l2_db'// название базы данных

$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 charId FROM characters WHERE char_name = '$name';");
$chd=mysql_fetch_assoc($ch);

$char_id=$chd['charId'];
$total=0;
$your_ip $_SERVER['REMOTE_ADDR'];
$dip=explode('.',$your_ip);
$your_ip1 $dip[0].'.'.$dip[1].'.'.$dip[2].'.xxx';

$html = @file_get_contents('http://l2top.ru/?servID='.$id_l2top.'&act=info');
if (!
$html || !preg_match_all('/<td>([^<]+)<\/td>/'$html$matches))
$error .= '<div align=center>Не удалось получить информацию с L2Top.ru!<br/></div>';
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` = 6673");
$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'];
$kk=mysql_query("INSERT INTO items (owner_id, object_id, item_id, count, enchant_level, loc, loc_data, time_of_use, custom_type1, custom_type2, mana_left, attributes) VALUES('".mysql_escape_string($char_id)."', '$ins_id', '$bonus_id', '$cols_for_vote', '0', 'INVENTORY', '0', NULL, '0', '0', '-1', 'none')") or die("FUCK");
}
else
mysql_query("UPDATE `items` SET `count` = `count` + ".$cols_for_vote." WHERE `owner_id` = ".mysql_escape_string($char_id)." AND `item_id` = 6673");
mysql_query("INSERT INTO `l2top` (`nick`, `ip`, `time`) VALUES ('".$name."', '".mysql_escape_string($your_ip1)."', '".mysql_escape_string($time)."')");
$total += $cols_for_vote;
$error .= '<div align=center>Голос за '$time.' зачислен.<br/></div>';
}
else
$error .= '<div align=center>Голос за '$time.' уже был зачислен.<br/></div>';
}
}
else
$error .= '<div align=center>Ваш голос на сайте L2Top.ru не найден.<br></div>';
}

echo 
$error.'<div align=center><br><b>'.$total.'</b> Festival Adena зачислено вашему персонажу!<br/></div>';

}

?>

PROGRAMMATOR; <-сори был сонный.у меня уже матрица в глазах :)

feroom 15.09.2009 18:01

Ответ: Скрипт поощрения за голосования и 4 сервера.
 
Вот глупый возможно вопрос, но почему скрипты только для Л2топ и все?
Че мало различных рейтингов?
Взять допустим л2ммотоп руЮ там тоже есть генерируется ТхТ файл с никами и ИП проголосовавших.
Просто реально интересно почему монополию держит л2топ.
У меня на сервер восновном приходят с совершенно других топов и намного больше!

PROGRAMMATOR 15.09.2009 21:40

Ответ: Скрипт поощрения за голосования и 4 сервера.
 
Это скорее всего из-за того, что он первый с такой посещаемостью, и каждый его благословляет находясь даже на 100+ странице, хоть оттуда к ним никто и не идет, а зачем? Он же находится в ! L2Top'e... Конечно, проще получить игроков в более мелких рейтингах серверов, где хоть как то можно пробиться в первые места.

feroom 21.09.2009 13:06

Ответ: Скрипт поощрения за голосования и 4 сервера.
 
Если не посчитаете рекламой, мог бы дать список топов откуда идет народу от 50 до 100 посетителей день.
Хоят я думаю все знают и так.
Но всетаки.
Так как мои познания в PHP мне не позволяю создать подобный скрипт, хотесоь бы привлечь специалистов.

Perfecto 21.09.2009 13:21

Ответ: Скрипт поощрения за голосования и 4 сервера.
 
У нас есть свой топ (так что делайте выводы сами будет это рекламой или нет)

feroom 24.09.2009 14:45

Ответ: Скрипт поощрения за голосования и 4 сервера.
 
Так что мы решили?
никто не пишет скриптов для других топов?

PROGRAMMATOR 24.09.2009 15:12

Ответ: Скрипт поощрения за голосования и 4 сервера.
 
Для каких других? Если вам нужно под определенный топ, то это в раздел Работа, а нет, то пишите администрации тех рейтингов, может они для вас напишут.


Текущее время: 01:49. Часовой пояс GMT +3.

Powered by vBulletin® Version 3.8.6
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot