Рейтинг темы:
  • 0 Голос(ов) - 0 в среднем
  • 1
  • 2
  • 3
  • 4
  • 5
L2Top, поощрение за голосование
#11
Ты наверно забыл подогнать к сборке запрос на создание итема.
Я не прав? Докажите это тут или тут
* Интересная тема * для новичков *
Ответ
#12
Вот моя таблица 'items'

Код:
CREATE TABLE IF NOT EXISTS items (
  `owner_id` INT, -- object id of the player or clan,owner of this item
  `object_id` INT NOT NULL DEFAULT 0,-- object id of the item
  `item_id` INT,   -- item id
  `count` INT,
  `enchant_level` INT,
  `loc` VARCHAR(10),      -- inventory,paperdoll,npc,clan warehouse,pet,and so on
  `loc_data` INT, -- depending on location: equiped slot,npc id,pet id,etc
  `price_sell` INT,
  `price_buy` INT,
  `time_of_use` INT, -- time of item use, for calculate of breackages
  `custom_type1` INT DEFAULT 0,
  `custom_type2` INT DEFAULT 0,
  `mana_left` decimal(3,0) NOT NULL default -1,
  PRIMARY KEY (`object_id`),
  KEY `key_owner_id` (`owner_id`),
  KEY `key_loc` (`loc`),
  KEY `key_item_id` (`item_id`),
  KEY `key_time_of_use` (`time_of_use`)
);

что посоветуешь?
вроде все соответсвует...
Ответ
#13
Посоветую проверить на соответствие с запросом INSERT
Я не прав? Докажите это тут или тут
* Интересная тема * для новичков *
Ответ
#14
ой прости я сравнивал со своим уже исправленым запросом, а точнее все, что после mana_left я убрал в своем запросе, вот в таком виде у меня скрипт и не дает итема ,без наличии его в инвенторе..

З.Ы. сори , уже достал наверно : )
Ответ
#15
в списке ников на л2топ мой есть, но когда ввожу свой ник в скрипт пишет что я не голосовал, так же с любым другим, что посоветуете?
Ответ
#16
SVKoT Написал:в списке ников на л2топ мой есть, но когда ввожу свой ник в скрипт пишет что я не голосовал, так же с любым другим, что посоветуете?
та же проблема... у меня подозрение что проверка то по ип идет, а на л2топе ип закрыты...
я с пхп конечно знаком, но не очень сильно)
ктонибудь в силах переделать скрипт под проверку только на ник?
заранее спасибо
Ответ
#17
дак да тоже думаю что проблема в этом, на л2топе чет поменяли нада новую версию скрипта
Ответ
#18
Если бы вы проверяли свою почту, "админы", то вы бы не пропустили письмо от Л2топа, в котором четко и ясно написано, что система у них поменялась и ИПы голосующих скрыты полностью, и надо менять скрипт.
Тут теперь каждый напишет, что "что то на л2топе поменялось, что же это может быть?" и "надо новый скрипт" ?
Я не прав? Докажите это тут или тут
* Интересная тема * для новичков *
Ответ
#19
письмо то читали, только толку? мне от того что я знаю что там поменяли систему о5 гемору не меньше.. вот если бы кто нить скриптом порадовал обновленным это другое дело..
Ответ
#20
Код:
<?



if(!isset($_POST['name'])){

echo '<form action="index.php?t=core&f=l2top" method="post">';

echo '
<b>1. <a href="http://l2top.ru/?voteme='.$id_l2top.'" target="_blank">Проголосуйте на L2Top</a></b>
<br />
<a href="http://l2top.ru/?voteme='.$id_l2top.'" target="_blank">
<img style="filter:alpha(opacity=50); opacity:0.5; -moz-opacity:1.0;" src="http://l2top.ru/vb/'.$id_l2top.'.pgif" width="88" height="31" border="0" alt="L2top.ru: Рейтинг-каталог серверов Lineage2"></a>
<br /><br />

<b>2. Введите ник персонажа<br/>
<input type="text" name="name"/><br/><br/>
<input type="submit" class="but" value="Получить бонус"/>

</form>';


}else{

$bonus_id=4037; // ID вещи которую зачисляем игроку как бонус за голосование | По умолчанию 6673 - Festival Adena
$cols_for_vote=5; // Колличество зачисляемых вещей за одно голосование
$id_l2top=0000; // Ваш ID в рейтинге L2Top

$host='хост'; // сервер на котором установлена база данных L2J
$user='логин'; // имя пользователя от базы данный
$pass='пасс'; // пароль пользователя от базы данный
$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 .= 'Не удалось получить информацию с 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` = ".$bonus_id." AND `loc`='INVENTORY';");
$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`, `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, 0, 0, NULL, 0, 0, -1)");
данный запрос необходимо переделывать взависимости от того, какая структура таблицы items у вас на сборке сервера. Данный запрос отвечает за добавление бонусной вещи за голосование в инвентарь, если у вас её еще нет.
*/
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, 0, 0, 0, -1, 0)");
}
else
mysql_query("UPDATE `items` SET `count` = `count` + ".$cols_for_vote." WHERE `owner_id` = ".mysql_escape_string($char_id)." AND `item_id` = ".$bonus_id." AND `loc`='INVENTORY';");
mysql_query("INSERT INTO `l2top` (`nick`, `ip`, `time`) VALUES ('".$name."', '".mysql_escape_string($your_ip1)."', '".mysql_escape_string($time)."')");
$total += $cols_for_vote;
$error .= '<font color="green">Голос за '. $time.' засчитан.</font><br/>';
}
else
$error .= '<font color="red">Голос за '. $time.' уже был засчитан ранее.</font><br/>';
}
}
else
$error .= '<font color="red">Ваш голос на сайте L2Top.ru не найден.</font><br>';
}

echo $error.'<br><b><font color="red">'.$total.'</font></b> CoL зачислено вашему персонажу!<br/>';

}

?>
Ответ


Возможно похожие темы ...
Тема Автор Ответы Просмотры Последний пост
  L2top скрипт награды за голосование TosyBosy 0 1,765 08-14-2013, 04:44 PM
Последний пост: TosyBosy
  l2top mmotop скрипты Tess 0 1,579 03-19-2013, 12:30 PM
Последний пост: Tess
  Open Web и L2top stopsay 1 2,295 03-02-2011, 08:51 AM
Последний пост: NotSpecified
  L2Top for L2phoenix 20715 Deron 6 3,245 02-19-2011, 07:44 PM
Последний пост: Ro_0TT
  DLE+голосование Amorph1s 3 3,146 02-04-2011, 05:34 PM
Последний пост: Amorph1s
  stress 8+ и L2Top InTerior 4 3,516 01-22-2011, 10:15 PM
Последний пост: derron116
  Куплю скрипт L2top POPsy 0 1,923 10-06-2010, 11:35 PM
Последний пост: POPsy
  Скрипт поощрения за голосование для mmotop cuthalir 1 3,213 10-06-2010, 09:24 PM
Последний пост: DeForMator
  L2Top Rakitmiha 5 2,986 07-26-2010, 01:36 PM
Последний пост: кулич
  L2Top Raid 5 3,030 07-21-2010, 12:20 PM
Последний пост: PROGRAMMATOR

Перейти к форуму:


Пользователи, просматривающие эту тему: 2 Гость(ей)