Магазин подаркоФФ

Статус
В этой теме нельзя размещать новые ответы.

AlexAvia

Новичок
Репутация
0 / 5
Когда даришь подарок персонажу ему в инфу перекидывается картинка с пожеланиями но сам предмет остаётся у того кто дарит!

Что делать?
 
Аналогично
Делал чтобы удалялся подарок у того кто дарит но тогда и у того кому дарит пропадает из инфы! да и продать их можно в магаз =(
 
Код:
<?
include("inc/db_connect.php");

$stat = mysql_fetch_array(mysql_query("SELECT user, id, level, rank, tribe, t_time, k_time, battle, room, credits FROM players WHERE user='".addslashes($user)."' AND pass='".addslashes($pass)."'"));

if ($stat['bloked']) echo"<script>top.location='index.php?action=logout'</script>";

$now = time();

if ($stat['t_time']) { header("Location: prison.php"); exit; }
elseif ($stat['k_time']) { header("Location: academy.php"); exit; }
elseif ($stat['w_time']) { header("Location: works.php"); exit; }
elseif ($stat['battle']) { header("Location: battle.php"); exit; }
elseif ($stat['room'] != 13) { header("Location: main.php"); exit; }

else {


if (@$present_submit) {

        if ($present_who != 1 && $present_who != 2 && $present_who != 3) $present_who = 1;
        if (!$stat['tribe'] && $present_who == 2) $present_who = 1;

        if (empty($present_user)) $msg="Укажите логин персонажа, которому Вы хотите сделать подарок!";
                else {
                $CharInfo = mysql_fetch_array(mysql_query("SELECT user FROM players WHERE user='".addslashes($present_user)."'"));
                if (empty($CharInfo['user'])) $msg="Персонаж [u]$present_user[/u] не найден!";
                elseif ($CharInfo['user'] == $stat['user']) $msg="Нельзя подарить что-либо самому себе!";
                else {
                        if (mysql_num_rows(mysql_query("SELECT id FROM objects WHERE id=".addslashes($present_id)." AND user='".$stat['user']."'"))) {

                                $ObjInfo = mysql_fetch_array(mysql_query("SELECT inf FROM objects WHERE id=".addslashes($present_id)." AND user='".$stat['user']."'"));

                                $ObjInfo = explode("|",$ObjInfo['inf']);

                                if (mysql_num_rows(mysql_query("SELECT * FROM prizes WHERE id=".addslashes($present_id).""))) $msg="Этот предмет уже был подарен ранее!";
                                elseif ($ObjInfo['5']) $msg="Вы не можете дарить артефакты!";
                                else {

                                        switch ($present_who) {
                                                case 1: $present_who = "user"; break;
                                                case 2: $present_who = "tribe"; break;
                                                case 3: $present_who = "anonim"; break;
                                        }

                                    $present_text = HtmlSpecialChars($present_text);

                                        
                                        mysql_query("INSERT INTO prizes values('".$CharInfo['user']."','".$stat['tribe']."','".addslashes($present_who)."','".addslashes($present_id)."','".$stat['user']."','".addslashes($present_text)."')");

                                        $msg="Подарок передан к [u]".$CharInfo['user']."[/u]!";
                                        }
                                                               }
                }
        }
}




if (!empty($buy)) {

switch ($otdel) {
        case 1: $cat = 100; break;
        case 2: $cat = 101; break;
}


$buyitem=mysql_fetch_array(mysql_query("SELECT * FROM items WHERE name='".addslashes($buy)."'"));
$shop_sost=mysql_fetch_array(mysql_query("SELECT * FROM shop WHERE otdel='".addslashes($cat)."' and name='".addslashes($buy)."'"));

if (empty($shop_sost['name'])) $msg="Предмет не найден в магазине!";
elseif ($buyitem[price]>$stat[credits]) $msg="У Вас недостаточно денег для покупки предмета [u]".$buyitem['title']."[/u]";



else {

if ($shop_sost['kol'] > 0) {

$stat['credits']-=$buyitem['price'];

if ($buyitem['tip'] == 14 && $buyitem['slot2'] == "w5") $secondary=1; else $secondary=0;
###ЛОЖИМ В ИНВЕНТАРЬ
$inf="$buyitem[name]|$buyitem[title]|$buyitem[price]|0|$secondary|$buyitem[art]|0|$buyitem[iznos]";
$min="$buyitem[min_level]|$buyitem[min_str]|$buyitem[min_dex]|$buyitem[min_ag]|$buyitem[min_vit]|$buyitem[min_razum]|$buyitem[min_rase]|$buyitem[min_proff]";

$lifetime=$now+$buyitem['life'];

mysql_query("INSERT INTO objects (`user`, `inf`, `min`,`tip`,`br1`,`br2`,`br3`,`br4`,`br5`,`min_d`,`max_d`,`hp`,`energy`,`strength`,`dex`,`agility`,`vitality`,`razum`,`krit`,`unkrit`,`uv`,`unuv`,`time`,`life`) values ('$stat[user]','$inf','$min','$buyitem[tip]','$buyitem[br1]','$buyitem[br2]','$buyitem[br3]','$buyitem[br4]','$buyitem[br5]','$buyitem[min]','$buyitem[max]','$buyitem[hp]','$buyitem[energy]','$buyitem[strength]','$buyitem[dex]','$buyitem[agility]','$buyitem[vitality]','$buyitem[razum]','$buyitem[krit]','$buyitem[unkrit]','$buyitem[uv]','$buyitem[unuv]','$now','$lifetime')");

mysql_query("update shop, players set shop.kol=shop.kol-1, players.credits=players.credits-$buyitem[price] where shop.name='".addslashes($buy)."' && players.user='".$stat['user']."'");

$msg="Вы купили предмет [u]".$buyitem['title']."[/u] за [u]".$buyitem['price']."[/u] зм.";

}}



}




function show ($id) {
        global $stat;

        switch ($id) {
                case 1: $cat = 100; break;
                case 2: $cat = 101; break;
        }


$item=mysql_query("SELECT items.*, shop.kol FROM items, shop WHERE shop.otdel=".addslashes($cat)." AND shop.kol>0 AND items.name=shop.name");

echo "<TABLE border=1 width=100% cellspacing=0 cellpadding=5  bordercolor=000000 bgcolor=e9e9e9>";

while ($iteminfo = mysql_fetch_array($item)) {

if ($id == 2) include("inc/main/items.php");

echo"<tr><td width=33% align=center valign=center>
[url="''"][b]".$iteminfo['title']."[/b][/url]


[b]Гос. цена: ".$iteminfo['price']." золотых[/b]

";

if ($id == 2) echo"Долговечность предмета: 0 [".$iteminfo['iznos']."]
";

echo"[b]<small style='COLOR: Red'>Предмет не подлежит ремонту</small>[/b]
";

echo"
Срок жизни: <b STYLE='COLOR: Red'>",$iteminfo['life']/86400," дн.[/b]
";



echo"

Количество: [u]".$iteminfo['kol']."[/u] шт.

</td>
<td width=34% align=center>
<img src='i/items/".$iteminfo['name'].".gif' alt='$iteminfo[title]'>


<span onclick=\"if (confirm('Купить предмет &quot;$iteminfo[title]&quot;?')) window.location='gshop.php?otdel=$_GET[otdel]&buy=$iteminfo[name]'\" style='CURSOR: Hand'>[b]Купить[/b]</a></td>
<td width=33% valign=top align=left>";


if ($min_rase || $min_level || $min_str || $min_dex || $min_ag || $min_vit || $min_razum || $min_proff) echo"
[b][i]Минимальные требования:[/i][/b]

$min_rase$min_level$min_str$min_dex$min_ag$min_vit$min_razum$min_proff
"; else echo"";

if ($hp || $energy || $min || $max || $strength || $dex || $agility || $vitality || $razum || $br1 || $br2 || $br5 || $br3 || $br4 || $krit || $unkrit || $uv || $unuv) echo"[b][i]Действие предмета:[/i][/b]

$hp$energy$min$max$strength$dex$agility$vitality$razum$br1$br2$br5$br3$br4$krit$unkrit$uv$unuv
";

echo"</td></tr>";

}

echo"</TABLE>";


}



$title = 'Магазин';
include("inc/html_header.php");

echo"
<body bgcolor=e9e9e9 leftmargin=0 topmargin=0>

<DIV ID=hint1></DIV>

<script src='i/show_inf.js'></SCRIPT>
";


print"<table width=100% cellspacing=0 cellpadding=5 border=0>
<tr>
<td>[b]У Вас на счету:[/b] [u]".$stat['credits']."[/u] [b]зм.[/b]
</td>
<td align=right valign=top>

<input class=lbut type=button value='Обновить' onclick='window.location.href=\"gshop.php?otdel=$_GET[otdel]&tmp=\"+Math.random();\"\"'>

<input class=lbut type=button value='Вернуться' onclick='window.location.href=\"world.php?room=0&tmp=\"+Math.random();\"\"'>

</td>
</tr>
</table>";


echo"
<table width=100% cellspacing=0 cellpadding=3 background='i/fond/bg3.gif' bordercolor=000000 bgcolor=e9e9e9 border=1>
<tr>
<td align=center>
<font class=title>Магазин подарков</font>

";

if (!empty($msg)) echo"<center><FONT COLOR=RED>[b]$msg[/b]</font></center>
";







echo"
Отделы магазина
<table width=100% cellspacing=0 border=1 background='i/fond/bg3.gif' bordercolor=000000 bgcolor=e9e9e9 cellpadding=5>
<tr>

<td align=center width=32%><A"; if ($otdel == 1) echo" disabled>[b]"; else echo" HREF='gshop.php?otdel=1'>"; echo"Открытки[/b]</A></td><td width=1% align=center>[b]|[/b]</td>
<td align=center width=34%><A"; if ($otdel == 2) echo" disabled>[b]"; else echo" HREF='gshop.php?otdel=2'>"; echo"Букеты[/b]</A></td><td width=1% align=center>[b]|[/b]</td>
<td align=center width=32%><A"; if ($otdel == 3) echo" disabled>[b]"; else echo" HREF='gshop.php?otdel=3'>"; echo"Подарить букет / открытку[/b]</A></td>

</tr>";


if (!empty($_GET['otdel'])) {
        echo"<TR><TD COLSPAN=5 ALIGN=CENTER><HR COLOR='#000000'>";

        switch ($_GET['otdel']) {
                case 1: show(1); break;
                case 2: show(2); break;
                case 3: include('inc/shop/gshop.php'); break;
                default: echo"<B STYLE='COLOR: Red'>Что-то тут не так...[/B]"; break;
        }

        echo"</TD></TR>";
}


echo"
</table>
";






echo"</td>
</tr>
</table>";

}
?>

Держите рабочий магазин
 
Спасибо!

под версию сесена надо чуток изменить только


нужно вот это

Код:
<?
include("inc/db_connect.php");

$stat = mysql_fetch_array(mysql_query("SELECT user, id, level, rank, tribe, t_time, k_time, battle, room, credits FROM players WHERE user='".addslashes($user)."' AND pass='".addslashes($pass)."'"));

if ($stat['bloked']) echo"<script>top.location='index.php?action=logout'</script>";

$now = time();

if ($stat['t_time']) { header("Location: prison.php"); exit; }
elseif ($stat['k_time']) { header("Location: academy.php"); exit; }
elseif ($stat['w_time']) { header("Location: works.php"); exit; }
elseif ($stat['battle']) { header("Location: battle.php"); exit; }
elseif ($stat['room'] != 13) { header("Location: main.php"); exit; }

else {

заменить на вот это


Код:
<?
$now=time();

include("inc/db_connect.php");

$stat = mysql_fetch_array(mysql_query("select * from players where user='".addslashes($user)."' and pass='".addslashes($pass)."'"));
  mysql_query("SET CHARSET cp1251");
if ($stat[bloked]=="1") echo"<script>top.location='index.php?action=logout'</script>";

if ($stat[t_time]) { header("Location: prison.php"); exit; }
elseif ($stat['v_time']) { header("Location: ambulance.php"); exit; } // Редиректим в больницу
elseif ($stat['w_time']) { header("Location: works.php"); exit; } // Редиректим в ворку
elseif ($stat['r_time']) { header("Location: vault.php"); exit; } 
elseif ($stat['o_time']) { header("Location: repair.php"); exit; } 
elseif ($stat[battle]) { header("Location: battle.php"); exit; }
elseif ($stat[room]!="9") { header("Location: main.php"); exit; }
else {
Все точно также веши если я дарю то они только в инфе и остаются у того кто подарил может надо еще из inc/shop gshop.php залей его подалуйсто
 
Код:
<?
include("inc/db_connect.php");

$stat = mysql_fetch_array(mysql_query("select * from players where user='".addslashes($user)."' and pass='".addslashes($pass)."'"));

if ($stat['bloked']) echo"<script>top.location='index.php?action=logout'</script>";

$ctime = time();

if ($stat['t_time']) { header("Location: prison.php"); exit; }
elseif ($stat['k_time']) { header("Location: academy.php"); exit; }
elseif ($stat['battle']) { header("Location: battle.php"); exit; }
elseif ($stat['room'] != 14) { header("Location: main.php"); exit; }

else {
$_SHOP['type'] = 2;

if (!isset($otdel)) $otdel=50;
if (($otdel>=50 && $otdel<=67))
    {echo "";}
    else
    {
    echo"<script>window.location='nshop.php?otdel=50'</script>";
    exit;
    }
if (!empty($buy)) include("inc/shop/__buy.php");

$title = 'Магазин \"Три тополя\"';

include("inc/html_header.php");

include("inc/shop/otdels.php");

echo'<link rel=stylesheet type="text/css" href="i/shop.css">';

echo"
<body bgcolor=#EBEDEC leftmargin=0 topmargin=0>
";

echo"<style>
.none                { display: none }
</style>";

print"<table width=100% cellspacing=0 cellpadding=5 border=0>
<tr>
<td>  [b]У Вас на счету:[/b] [u]".$stat['f_credits']."[/u] [b]сз.[/b]
</td>
<td align=right valign=top>

<img src='i/refresh.gif' style='CURSOR: Hand' alt='Обновить' onclick='window.location.href=\"nshop.php?otdel=$otdel&tmp=\"+Math.random();\"\"'>

<img src='i/back.gif' style='CURSOR: Hand' alt='Вернуться' onclick='window.location.href=\"world.php?room=0&tmp=\"+Math.random();\"\"'> 

</td>
</tr>
</table>";


echo"
<table width=100% cellspacing=0 cellpadding=3 border=0>
<tr>
<td align=right>
<center><font class=title>Магазин \"Три тополя\".</font></center>
";

if (!empty($msg)) echo"<center><FONT COLOR=RED>[b]$msg[/b]</font></center>
";

echo"
<table width=100% cellspacing=0 cellpadding=3 border=0>
<tr>
<td width=230 valign=top>

<FIELDSET><LEGEND><a class=ch>Отделы магазина</a></LEGEND>

<table width=100% cellspacing=0 cellpadding=5 border=0>
<tr>
<td>

<table width=100% cellspacing=0 border=0 cellpadding=5 style='border-style: outset; border-width: 2'>
<tr>
<td>

        <a class=shop>Оружие:</a>

         • <a href='?otdel=50'>Ножи и кинжалы</a>

         • [url="'?otdel=51'>Мечи</a>

         •"]Топоры и Секиры[/url]

         • <a href='?otdel=53'>Дубины и Булавы</a>



        <a class=shop>Доспехи:</a>

         • [url="'?otdel=54'>Шлемы</a>

         •"]Лёгкая броня[/url]

         • <a href='?otdel=56'>Тяжёлая броня</a>

         • [url="'?otdel=57'>Браслеты</a>

         •"]Нарукавники[/url]

         • [url="'?otdel=59'>Перчатки</a>

         •"]Щиты[/url]

         • [url="'?otdel=61'>Пояса</a>

         •"]Обувь[/url]



        <a class=shop>Ювелирные изделия:</a>

         • [url="'?otdel=63'>Ожерелья</a>

         •"]Кольца[/url]




        <a class=shop>Магические предметы:</a>

         • [url="'?otdel=65'>Посохи</a>

         •"]Свитки[/url]

         • <a href='?otdel=67'>Зелья</a>

</td>
</tr>
</table>

</td>
</tr>
</table>

</FIELDSET>


</td>
<td valign=top>

<FIELDSET><LEGEND><a class=ch>";
echo"Ассортимент товаров отдела \"$otdels[$otdel]\" ";

echo"</a></LEGEND>

<table width=100% cellspacing=0 cellpadding=5 border=0>
<tr>
<td>

<table width=100% cellspacing=0 border=0 cellpadding=5 style='border-style: outset; border-width: 2'>
<tr>
<td>
";

/*
if ($stat[rank] != 100) echo"[url="#"]Магазин закрыт. Приём товара.[/url]"; else include('inc/shop/__otdels.php');
*/

include('inc/shop/__otdels.php');

echo"
</td>
</tr>
</table>

</td>
</tr>
</table>

</FIELDSET>



</td>
</tr>
</table>
";

echo"
</td>
</tr>
</table>";

}
?>
 
народ используйте только кнопочку КОД
спасибо за внимание .
 
У него как видеш уже давно набиты (259), а вот ты точна набиваеш
 
что то от темы ушли.. а магаз с подарками серавно не работает при отправке подарка дуплекат вещи остается в рюкзаке... :)
 
где в сборке sesen магазин с подарками?в базе есть скрипт есть а магазина в локациях нет!
 
Народ!!!
Подскажите...после дарения подарка и по истечению срока его жизни, подарок сам не пропадает :)
У всех так или только у меня ? :)

В каком файле вообще стоит функция делета подарка по истечению его срока?
Или мож посоветуете куда ее лучше пихнуть...
 
Народ!!!
Подскажите...после дарения подарка и по истечению срока его жизни, подарок сам не пропадает :)
У всех так или только у меня ? :)

В каком файле вообще стоит функция делета подарка по истечению его срока?
Или мож посоветуете куда ее лучше пихнуть...
в инфу в отображение подарка поставь проверку if время подарка > $now { отображаешь } else { не отображаешь }
 
в инфу в отображение подарка поставь проверку if время подарка > $now { отображаешь } else { не отображаешь }

Ну эт то я и так знаю :)
Мне нужно чтобы он не только не отображался, но чтоб его и из таблицы обжектов удалить >)
Пробовал...но чтот эти презенты никак удалятся не хотят.
Подскажет мож кто, что и куда конкретно вставить ?
Спасибо гарантирую :)
 
Ну эт то я и так знаю :)
Мне нужно чтобы он не только не отображался, но чтоб его и из таблицы обжектов удалить >)
Пробовал...но чтот эти презенты никак удалятся не хотят.
Подскажет мож кто, что и куда конкретно вставить ?
Спасибо гарантирую :)
в CRON пропиши попробуй
 
в CRON пропиши попробуй

в крон то не желательно...он будет постоянно базу запросами нагружать :)
надо именно в инфу...или хотя бы в инвентарь...я так думаю...
вроде бы сложного ничего нет...но не хотят подарки делетиться из базы...хоть ты тресни :)
 
в крон то не желательно...он будет постоянно базу запросами нагружать :)
надо именно в инфу...или хотя бы в инвентарь...я так думаю...
вроде бы сложного ничего нет...но не хотят подарки делетиться из базы...хоть ты тресни :)
а если после задания массива с подарками поставить выборку подарков тех у кого $live<$now и сквел на делит этих строк
 
Чтот ни фига не выходит :)
Толи вставляю не туда...то ли условие неверное сделел...
 
Всё, решил я эту проблему *wink*
Теперь все удаляется как надо...
 
решение, мягко говоря не изящное, но простое и работает)

gshop.php
ищем
Код:
 mysql_query("INSERT INTO prizes values('".$CharInfo['user']."','".$stat['tribe'].   <и тд и тп......>

после етого добавляем
Код:
 mysql_query("UPDATE objects SET user='' WHERE id='".addslashes($present_id)."'");
 
Статус
В этой теме нельзя размещать новые ответы.
Сверху