Skip to content
La2Base
Home
DownloadsWikiForumFAQ
Search
ruen
Sign up Login
HomeFilesWikiLogin
  • Home
  • Downloads
  • Wiki
  • FAQ
  • Contact Us
  • About
  • Rules
  • Privacy
  • Terms of Service

© 2026 la2base.com · All rights reserved

ruen
Forum/Web обвязка/[help]c Stress_web_v5_off_la2base
Search

[help]c Stress_web_v5_off_la2base

12 replies164 viewsCurrently viewing: 1
PycJIaHbl4
PycJIaHbl4

User

Бывалый

Posts: 110

На форуме с: 05/19/2009

Репутация: +9

Рейтинг: 0

· 07/25/2009, 09:49 AM

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

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

echo "<div align=\"center\"><table width='450'><tr><td><center><b>Здесь вы можете принять участие в акции: <br>«Бонус за голосование».<br><br>
<i>Для этого необходимо:</i></b></center><br>
1. Проголосовать за наш сервер в рейтинге L2top.ru: <a href=\"http://l2top.ru/?voteme=".$id_l2top."\">Голосовать</a><br>
2. Получить бонус. Для чего необходимо:<br>
<ul><li>Вписать в форму ниже ник вашего чара (не путайте с названием аккаунта)</li>
<li>Нажать на кнопку «Получить бонус»</li></ul>
<center>После этого вашему чару в инвентарь будет выдано поощрение «".$bunus_name."» в количестве ".$cols_for_vote." шт.</center><br>
<b>Вниманние!</b><br>
Чтобы получить бонус ваш ник должен быть в <a href=\"http://l2top.ru/?servID=".$id_l2top."&act=info\"><b>этом списке</b></a><br>А также персонаж должен находиться не в игре.<br><br><center>
<form action=\"l2top.php\" method=\"post\">
Ник персонажа<br/>
<input type=\"text\" name=\"name\"/><br/><br/>
<input type=\"submit\" value=\"Получить бонус\"/>
</form></center></td></tr></table></div>";


}else{

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

$mc = mysql_connect($host, $user, $pass);
if($mc){
$db = mysql_select_db ($db);
}

if(!$mc || !$db){

echo '<div align=center>Нет соединения с базой данных.</div>';

exit;

}

$name=mysql_escape_string($_POST['name']);

$ch=mysql_query("SELECT obj_Id,online FROM characters WHERE char_name = '".$name."';");
if (mysql_num_rows($ch)==0)
{
echo "<div align=center>Персонаж не найден</div>";
exit;
}
$chd=mysql_fetch_assoc($ch);
if ($chd['online']==1)
{
echo "<div align=center>Ваш персонаж в игре, для начала надо выйти</div>";
exit;
}
$char_id=$chd['obj_Id'];
$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` = '".$bonus_id."'");
$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'];
$putitem=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')") or die(mysql_error());
}
else
mysql_query("UPDATE `items` SET `count` = `count` + ".$cols_for_vote." WHERE `owner_id` = ".mysql_escape_string($char_id)." AND `item_id` = '".$bonus_id."' ");
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> '.$bunus_name.' зачислено вашему персонажу!<br/></div>';

}

?>



d94fefdbba8d.gif

0
WasleY
WasleY

User

Бывалый

Posts: 385

На форуме с: 02/21/2009

Репутация: +140

Рейтинг: 0

· 07/25/2009, 09:57 AM

Цитата
<a href=\"http://l2top.ru/?servID=".$id_l2top."&act=info\">



Вот эту строчку заменить надо. Юзай поиск вот только недавно был мануал на это

— Парень с Химок :)

0
PycJIaHbl4
PycJIaHbl4

User

Бывалый

Posts: 110

На форуме с: 05/19/2009

Репутация: +9

Рейтинг: 0

· 07/25/2009, 10:33 AM

Если не трудно могёшь ссылочку на мануал подкинуть?

0
Роман
Роман

User

Новичок

Posts: 9

На форуме с: 07/21/2009

Репутация: +3

Рейтинг: 0

· 07/25/2009, 10:43 AM

На тебе твой скрипт) http://dump.ru/file/3113617

— 27

0
PycJIaHbl4
PycJIaHbl4

User

Бывалый

Posts: 110

На форуме с: 05/19/2009

Репутация: +9

Рейтинг: 0

· 07/25/2009, 11:29 AM

без обид но помойму я раньше времени спасибку ткнул скрипт старый и не точна также не пашет
п.с. топ ща тупит поэтому не могу точно ничего сказать

там в принципе просто адреса нужных страничек нада поменять (прменял бы и сам но незнаю, поэтому спс за любую помощь )

0
sanja
sanja

User

Бывалый

Posts: 197

На форуме с: 08/26/2008

Репутация: +280

Рейтинг: 0

· 07/25/2009, 11:36 AM

Тема не в том разделе...но все же

строка

Цитата
<a href=\"http://l2top.ru/?servID=".$id_l2top."&act=info\">

заменить
Цитата
<a href=\"http://l2top.ru/info/".$id_l2top."/\">

0
Роман
Роман

User

Новичок

Posts: 9

На форуме с: 07/21/2009

Репутация: +3

Рейтинг: 0

· 07/25/2009, 11:53 AM

stress: Тема не в том разделе...но все же

строка

заменить

Стресс это я ему и сделал но как видиш он говорит что что то у него не выходит.

А вообще попробуй этот http://la2base.ru/web_for_java/4807-raboch...ovaniya-na.html

Сорь вот твой чуть подправил http://dump.ru/file/3114006

— 27

0
sanja
sanja

User

Бывалый

Posts: 197

На форуме с: 08/26/2008

Репутация: +280

Рейтинг: 0

· 07/25/2009, 12:06 PM

немного не та строка...не заметил
эта строка

Цитата
$html = @file_get_contents('http://l2top.ru/?servID='.$id_l2top.'&act=info');

на эту
Цитата
$html = @file_get_contents('http://l2top.ru/info/'.$id_l2top.'/');

0
DioNiR90
DioNiR90

User

Бывалый

Posts: 146

На форуме с: 06/07/2007

Репутация: +70

Рейтинг: 0

· 07/25/2009, 12:11 PM

stress, почитай:
_http://base.vingrad.ru/view/2865-Pochemu-nelzya-ispolzovat-fopen-file_get_contents-pri-rabote-s-HTTP

0
PycJIaHbl4
PycJIaHbl4

User

Бывалый

Posts: 110

На форуме с: 05/19/2009

Репутация: +9

Рейтинг: 0

· 07/25/2009, 12:11 PM

pardon.gif я уже наверное достал но из топа так и не получается получить информацию

при вот таком варианте

Код
$html = @file_get_contents('http://l2top.ru/info/'.$id_l2top.'&act=info');
if (!$html || !preg_match_all('/<td>([^<]+)<\/td>/', $html, $matches))
$error .= '<div align=center>Не удалось получить информацию с L2Top.ru!<br/></div>';


а при таком пишет что не найден голос в л2топ (он там есть 100%)
Код
$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>';

0
sanja
sanja

User

Бывалый

Posts: 197

На форуме с: 08/26/2008

Репутация: +280

Рейтинг: 0

· 07/25/2009, 12:33 PM

DioNiR90: stress, почитай:
_http://base.vingrad.ru/view/2865-Pochemu-nelzya-ispolzovat-fopen-file_get_contents-pri-rabote-s-HTTP

то что нельзя может и так...но не я этот скрипт придумал...я лишь его модифицировал

Цитата(PycJIaHbl4 @ 25.7.2009, 15:11) <{POST_SNAPBACK}>
pardon.gif я уже наверное достал но из топа так и не получается получить информацию

при вот таком варианте
Цитата
$html = @file_get_contents('http://l2top.ru/info/'.$id_l2top.'&act=info');
if (!$html || !preg_match_all('/<td>([^<]+)<\/td>/', $html, $matches))
$error .= '<div align=center>Не удалось получить информацию с L2Top.ru!<br/></div>';

сравни что у тебя с тем что я писал выше

0
PycJIaHbl4
PycJIaHbl4

User

Бывалый

Posts: 110

На форуме с: 05/19/2009

Репутация: +9

Рейтинг: 0

· 07/25/2009, 12:40 PM

сори stress не увидел последний пост все поправил всё работает
вот рабочий вариант

Код
<?
$bonus_id=3794;     // ID предмета-бонуса (по умолчанию Festival Adena)
$bunus_name='Coin of Old Empire'; // название бонуса
$cols_for_vote=4; // Колличество зачисляемых вещей за одно голосование
$id_l2top=0000; // Ваш ID в рейтинге L2Top

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

echo "<div align=\"center\"><table width='450'><tr><td><center><b>Здесь вы можете принять участие в акции: <br>«Бонус за голосование».<br><br>
    <i>Для этого необходимо:</i></b></center><br>
    1. Проголосовать за наш сервер в рейтинге L2top.ru: <a href=\"http://l2top.ru/?voteme=".$id_l2top."\">Голосовать</a><br>
    2. Получить бонус. Для чего необходимо:<br>
    <ul><li>Вписать в форму ниже ник вашего чара (не путайте с названием аккаунта)</li>
    <li>Нажать на кнопку «Получить бонус»</li></ul>
    <center>После этого вашему чару в инвентарь будет выдано поощрение «".$bunus_name."» в количестве ".$cols_for_vote." шт.</center><br>
    <b>Вниманние!</b><br>
    Чтобы получить бонус ваш ник должен быть в <a href=\"http://l2top.ru/info/".$id_l2top."/\"><b>этом списке</b></a><br>А также персонаж должен находиться не в игре.<br><br><center>
    <form action=\"l2top.php\" method=\"post\">
    Ник персонажа<br/>
    <input type=\"text\" name=\"name\"/><br/><br/>
    <input type=\"submit\" value=\"Получить бонус\"/>
    </form></center></td></tr></table></div>";


}else{

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

$mc = mysql_connect($host, $user, $pass);
if($mc){
$db = mysql_select_db ($db);
}

if(!$mc || !$db){

echo '<div align=center>Нет соединения с базой данных.</div>';

exit;

}

$name=mysql_escape_string($_POST['name']);

$ch=mysql_query("SELECT obj_Id,online FROM characters WHERE char_name = '".$name."';");
if (mysql_num_rows($ch)==0)
{
    echo "<div align=center>Персонаж не найден</div>";
    exit;
}
$chd=mysql_fetch_assoc($ch);
if ($chd['online']==1)
{
    echo "<div align=center>Ваш персонаж в игре, для начала надо выйти</div>";
    exit;
}
$char_id=$chd['obj_Id'];
$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/info/'.$id_l2top.'/');
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` = '".$bonus_id."'");
$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'];
$putitem=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')") or die(mysql_error());
}
else
mysql_query("UPDATE `items` SET `count` = `count` + ".$cols_for_vote." WHERE `owner_id` = ".mysql_escape_string($char_id)." AND `item_id` = '".$bonus_id."' ");
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> '.$bunus_name.' зачислено вашему персонажу!<br/></div>';

}

?>

0
Topic is closed for replies