Перейти к контенту

Рекомендуемые сообщения

У меня вотнедавно появилась идейка вставить в магазин RPG Inferno виртуального продовца, но че-то у меня не клеется, сказывается то что в РНР я ничего не соображаю, ну подчти ичего.

Может мне поможет кто-нибудь понимающий в этом деле. В админке продовец прописывается (записывается в БД, аватарчик его виден) там вроде как все нормально, но в магазинах(рынке) когда я нажимаю на созданый мною магаз, то картинка продовца в нужном месте не меняется. Че делать не знаю.

Вот измененные мною файлы:

 

rpg.php

Находим function BuyItems() и меняем ее всю на

function BuyItems(){
global $DB, $ibforums,$std;

// are we offline? v2 //
$DB->query("SELECT * FROM ibf_rpgoptions where id='1'");
$options=$DB->fetch_row();
if($options['itemshopon']=="Offline"){
$std->Error( array( 'LEVEL' => 1, 'MSG' => 'section_offline' ) );
}

// Member Money
$DB->query("SELECT * FROM ibf_members where id='".$ibforums->member['id']."'");
$Member=$DB->fetch_row();

// our inventory, yay!
$this->output .= $this->html->InvenTop();
$DB->query("SELECT i.*,s.*
FROM ibf_infernostock s
LEFT JOIN ibf_infernoshop i ON (s.item=i.id)
where s.owner='{$ibforums->member['id']}'");
while($Item=$DB->fetch_row()){
$Sell=floor($Item['cost']/3);
$this->output .= $this->html->InvenRow($Item,$Sell);
}

$DB->query("SELECT * FROM ibf_members where id='".$ibforums->member['id']."'");
$Member=$DB->fetch_row();
if($Member['heal1']==""){}else{
$DB->query("SELECT * FROM ibf_infernocat where cid='{$Member['heal1']}'");
$Prod=$DB->fetch_row();
$Sell=floor($Prod['cost']/3);
$this->output .= $this->html->InvenBottom($Member,$Prod,$Sell);
}
// lets display some cats - Lets upgrade some data presentation - [V3]

$this->output .= $this->html->CatTop();
// select all categories
$DB->query("SELECT * FROM ibf_infernocat");
while($thecat=$DB->fetch_row()){
$AllCats[$thecat[cid]]=$thecat;
}

// Select all items
$DB->query("select i.*,m.money from ibf_infernoshop i, ibf_members m where m.id='{$ibforums->member['id']}' order by `cost`");
while($theitem=$DB->fetch_row()){
$AllItems[]=$theitem;
}


if($ibforums->input['shop']){


if($ibforums->input['shop']=="expandall"){

} else {
$id=$ibforums->input['shop'];
$shop = $AllCats[$id];


// Grab Items And Data
$this->output .= $this->html->ShopTop($shop);
if(is_array($AllItems)){
foreach($AllItems as $Data){
if($Data['type']==$id){
if($Member['money'] >= $Data['cost']){
$Data['BuyLink'].="<a href='?act=rpg&code=buyitem&id={$Data['id']}' style='color:green'>{$ibforums->lang['buy']}</a>";
} else if($Member['money'] < $Data['cost']){
$Data['BuyLink'].="<a href='?act=rpg&code=buyitem&id={$Data['id']}' title='Не достаточно {$ibforums->lang['money']}' style='color:red'>{$ibforums->lang['buy']}</a>";
} else {}
$this->output .= $this->html->Row($Data);
}}}
$this->output .= $this->html->ShopBottom($Member);
}}

if(is_array($AllCats)){
foreach($AllCats as $TheCat){
if($TheCat['cname']==""){}else{
$TheCat['total_items']=0;
$TheCat['total_sold']=0;
$TheCat['total_profit']=0;
if(is_array($AllItems)){
foreach($AllItems as $ItemsA){
if($ItemsA['type']==$TheCat['cid']){
$TheCat['total_items']++;
$TheCat['total_sold']+=$ItemsA['sold'];
$TheCat['total_profit']+=($ItemsA['cost']*$ItemsA['sold']);
}}}
$this->output .= $this->html->CatRow($TheCat);
}}}
$this->output .= $this->html->CatBottom();

$this->output .= $this->html->Copyright();
$this->page_title = "Магазин";
$this->nav        = array(
"Itemshop",
);
}

 

skin_rpg.php

я там много че менял точно не помню, но продовцов я втыкнул в InvenBottom

//===========================================================================
// InvenBottom
//===========================================================================
function InvenBottom($Member="",$Data="",$Sell="") {
global $ibforums;
$IPBHTML = "";
//--starthtml--//


$IPBHTML .= <<<EOF
<tr>
<td colspan='6' class='row1'>Всего {$ibforums->lang['money']}: {$Member['money']}</td>

</tr>
</table>

</div>
<br>
<div class='formsubtitle'>
<table cellpadding='0' cellspacing='0' border='3'>
<tr><td width='100'><div class='formsubtitle' style='font-weight:normal;font-size:140%;font-style:italic'><img src='html/Inferno/prod/{$Data['img']}' alt='{$Data['name']}'>"Welcome to my shop, how may I help you?"</div></td></tr>
</table>
</div><br>
<table>
<tr>
EOF;

//--endhtml--//
return $IPBHTML;
}

 

 

И конечно же админка

<?php

$idx = new ad_scat();


class ad_scat {
function ad_scat() {
global $ibforums, $DB,  $std, $forums, $HTTP_POST_VARS;
$ibforums->admin->page_title = "Manage Itemshop Catagories";
$ibforums->admin->page_detail = "";
switch($ibforums->input['code']){
case 'editscat':
$this->edit_scats();
break;
case 'deletescat':
$this->delete_scat();
break;
case 'dodelete':
$this->do_delete();
break;

case 'doedit':
$this->do_edit();
break;

case 'addscat':
$this->add_scat();
break;

case 'doadd':
$this->do_add();
break;

default:
$this->view_scats();
break;

}
$ibforums->admin->output();
}


function view_scats(){
global $ibforums, $DB,  $std, $forums, $HTTP_POST_VARS;
$ibforums->adskin->td_header[] = array( "ID" , "1%" );
$ibforums->adskin->td_header[] = array( "Продовец"    , "10%" );
$ibforums->adskin->td_header[] = array( "Name" , "19%" );
$ibforums->adskin->td_header[] = array( "Description" , "30%" );
$ibforums->adskin->td_header[] = array( "Edit"         , "15%" );
$ibforums->adskin->td_header[] = array( "Delete"         , "15%" );

// ----------------

$ibforums->vars['html_url'] = "html";

$ibforums->html .= $ibforums->adskin->start_table( "Manage Catagories For Itemshop" );

$DB->query("SELECT * FROM ibf_infernocat");
while ($Data = $DB->fetch_row() ) {
$ibforums->html .= $ibforums->adskin->add_td_row( array(
"<center><b>{$Data['cid']}</b></center>",
"<center><img src='{$ibforums->vars['html_url']}/Inferno/prod/{$Data['img']}'></center>",
"<center>{$Data['cname']}</center>",
"<center>{$Data['desc']}</center>",
"<center><a href='{$ibforums->admin->base_url}&act=scat&code=editscat&cid={$Data['cid']}'>Edit</a></center>",
"<center><a href='{$ibforums->admin->base_url}&act=scat&code=deletescat&cid={$Data['cid']}'>Delete</a></center>",
)      );

}
$ibforums->html .= $ibforums->adskin->add_td_basic("<a href='{$ibforums->admin->base_url}&act=scat&code=addscat'>Add New Itemshop Catagory</a></center>", "center", "tdrow1");
$ibforums->html .= $ibforums->adskin->end_table();
}

function edit_scats(){
global $ibforums, $DB,  $std, $forums, $HTTP_POST_VARS;
$ibforums->html .= $ibforums->adskin->start_form( array(
1 => array( 'code'  , 'doedit'  ),
2 => array( 'act'  , 'scat'     ),
3 => array( 'cid'    , $ibforums->input['cid']   ),
)  );

$DB->query("SELECT * FROM ibf_infernocat WHERE cid='".$ibforums->input['cid']."'");

if ( ! $Data = $DB->fetch_row() ){
       $ibforums->admin->error("Unable to find the catagory inside the db");
}

//+-------------------------------

$ibforums->adskin->td_header[] = array( " "  , "40%" );
$ibforums->adskin->td_header[] = array( " "  , "60%" );

//+-------------------------------
$ibforums->vars['html_url'] = "html";
$ibforums->vars['html_dir'] = "html";

$ibforums->html .= $ibforums->adskin->start_table( "Edit Catagory" );

//Grab Items
$handle = opendir($ibforums->vars['html_dir'] . "/Inferno/prod/");
$icons[] = array('blank.gif', 'Select A Item Image');
while ($icon = readdir($handle)) {
if(preg_match("/(.jpg|.gif|.png|.bmp)/",$icon)) {
if($icon != '.' || $icon  != '..') {
$icons[] = array($icon, $icon);
}}}


$ibforums->html .= "<script>
function show_icon() {
document.images['showitem'].src = '{$ibforums->vars['html_url']}/Inferno/prod/' + document.theAdminForm.img.value
}
</script>";
$ibforums->html .= $ibforums->adskin->add_td_row( array( "<b>Продовцы</b>" ,
$ibforums->adskin->form_dropdown('img', $icons,"","onChange='show_icon()'") . " <img src='{$ibforums->vars['html_url']}/Inferno/prod/blank.gif' name='showitem' border='0'>
<script>
x=document.theAdminForm.img.options
for(u=0;u<x.length;u++){
if(x[u].value=='{$Data['img']}'){
x[u].selected=true;
document.images['showitem'].src = '{$ibforums->vars['html_url']}/Inferno/prod/' + document.theAdminForm.img.value
}}
</script>
",
)      );

$ibforums->html .= $ibforums->adskin->add_td_row( array( "<b>Name</b>" ,
$ibforums->adskin->form_input("name", $Data['cname'] )
)      );
$ibforums->html .= $ibforums->adskin->add_td_row( array( "<b>Description</b>" ,
$ibforums->adskin->form_input("desc", $Data['desc'] )
)      );
$ibforums->html .= $ibforums->adskin->end_form('Update Catagory');

$ibforums->html .= $ibforums->adskin->end_table();


}

function do_edit(){
global $ibforums, $DB,  $std, $forums, $HTTP_POST_VARS;
$DB->query("UPDATE `ibf_infernocat` SET img='{$ibforums->input['img']}' WHERE cid='{$ibforums->input['cid']}'");
$DB->query("UPDATE `ibf_infernocat` SET cname='{$ibforums->input['name']}' WHERE cid='{$ibforums->input['cid']}'");
$DB->query("UPDATE `ibf_infernocat` SET `desc`='{$ibforums->input['desc']}' WHERE cid='{$ibforums->input['cid']}'");
$DB->query("OPTIMIZE TABLE ibf_infernocat");
$ibforums->admin->done_screen("Itemshop Catagory Updated", "Catagory Management", "act=scat" );
}

function delete_scat(){
global $ibforums, $DB,  $std, $forums, $HTTP_POST_VARS;

$ibforums->adskin->td_header[] = array( " "  , "40%" );
$ibforums->adskin->td_header[] = array( " "  , "60%" );
// -------------
$ibforums->html .= $ibforums->adskin->start_form( array(
1 => array( 'code'  , 'dodelete'  ),
2 => array( 'act'  , 'scat'     ),
3 => array( 'cid'    , $ibforums->input['cid']   ),
)      );

$DB->query("SELECT * FROM ibf_infernocat WHERE cid='".$ibforums->input['cid']."'");

if ( ! $mGrab = $DB->fetch_row() ){
       $ibforums->admin->error("Unable to find the catagory inside the db");
}

$ibforums->html .= $ibforums->adskin->start_table( "Removal Confirmation" );
$ibforums->html .= $ibforums->adskin->add_td_row( array(
"<b>Catagory to Remove</b>" ,
"<b>{$mGrab['cname']}</b>",
)      );

$ibforums->html .= $ibforums->adskin->end_form("Remove This Catagory");
$ibforums->html .= $ibforums->adskin->end_table();

}

function do_delete(){
global $ibforums, $DB,  $std, $forums, $HTTP_POST_VARS;

$DB->query("DELETE FROM ibf_infernocat WHERE cid='".$ibforums->input['cid']."'");
$DB->query("OPTIMIZE TABLE ibf_infernocat");
$ibforums->admin->done_screen("Itemshop Catagory Removed", "Catagory Management", "act=scat" );
}

function add_scat(){
global $ibforums, $DB,  $std, $forums, $HTTP_POST_VARS;
$ibforums->html .= $ibforums->adskin->start_form( array(
1 => array( 'code'  , 'doadd'  ),
2 => array( 'act'  , 'scat'     ),
3 => array( 'cid'    , $ibforums->input['cid']   ),
)  );


//+-------------------------------

$ibforums->adskin->td_header[] = array( " "  , "40%" );
$ibforums->adskin->td_header[] = array( " "  , "60%" );

//+-------------------------------

$ibforums->html .= $ibforums->adskin->start_table( "Add Catagory" );

//Grab Items
$ibforums->vars['html_url'] = "html";
$ibforums->vars['html_dir'] = "html";
$handle = opendir($ibforums->vars['html_dir'] . "/Inferno/prod/");
$icons[] = array('blank.gif', 'Select A Item Image');
while ($icon = readdir($handle)) {
if(preg_match("/(.jpg|.gif|.png|.bmp)/",$icon)) {
if($icon != '.' || $icon  != '..') {
$icons[] = array($icon, $icon);
}}}

$ibforums->html .= "<script>
function show_icon() {
document.images['showitem'].src = '{$ibforums->vars['html_url']}/Inferno/prod/' + document.theAdminForm.img.value
}
</script>";
$ibforums->html .= $ibforums->adskin->add_td_row( array( "<b>Продовцы</b>" ,
$ibforums->adskin->form_dropdown('img', $icons,"","onChange='show_icon()'") . " <img src='{$ibforums->vars['html_url']}/Inferno/prod/blank.gif' name='showitem' border='0'>",
)      );

$ibforums->html .= $ibforums->adskin->add_td_row( array( "<b>Catagory Name</b>" ,
$ibforums->adskin->form_input("cname", "" )
)      );
$ibforums->html .= $ibforums->adskin->add_td_row( array( "<b>Catagory Description</b>" ,
$ibforums->adskin->form_input("desc", "" )
)      );

$ibforums->html .= $ibforums->adskin->end_form('Add Catagory');

$ibforums->html .= $ibforums->adskin->end_table();

}

function do_add(){
global $ibforums, $DB,  $std, $forums, $HTTP_POST_VARS;
$DB->query("INSERT INTO `ibf_infernocat` VALUES ('','{$ibforums->input['img']}','{$ibforums->input['cname']}','{$ibforums->input['desc']}')  ");
$DB->query("OPTIMIZE TABLE ibf_infernocat");
$ibforums->admin->done_screen("Itemshop Catagory Added", "Catagory Management", "act=scat" );

}

// Class end
}
?>

 

Да и чуть не забыл про БД

таблица ibf_infernocat

Я добавил поле img

CREATE TABLE `ibf_infernocat` (
 `cid` int(11) NOT NULL auto_increment,
 `img` text NOT NULL,
 `cname` text NOT NULL,
 `desc` text NOT NULL,
 PRIMARY KEY  (`cid`)
) TYPE=MyISAM AUTO_INCREMENT=9;

INSERT INTO `ibf_infernocat` VALUES (1, '01.gif', 'Броня (Фэн)', 'Поупайте и надевайте на себя');
INSERT INTO `ibf_infernocat` VALUES (2, '02.gif', 'Предметы', 'улучшают харатеристии героя');
INSERT INTO `ibf_infernocat` VALUES (3, '15.gif', 'Оружие', 'Чемто вам надо же воевать');
INSERT INTO `ibf_infernocat` VALUES (8, '14.gif', 'ffdsf', 'dfsf');

 

Если кто знает где ошибка подскажите...

Ссылка на комментарий
Поделиться на других сайтах

Присоединиться к обсуждению

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

Гость
Ответить в этой теме...

×   Вы вставили отформатированный текст.   Удалить форматирование

  Допустимо не более 75 смайлов.

×   Ваша ссылка была автоматически заменена на медиа-контент.   Отображать как ссылку

×   Ваши публикации восстановлены.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

Зарузка...
×
×
  • Создать...

Важная информация

Находясь на нашем сайте, вы соглашаетесь на использование файлов cookie, а также с нашим положением о конфиденциальности Политика конфиденциальности и пользовательским соглашением Условия использования.