MyBB.de Forum
Item-Shop - Druckversion

+- MyBB.de Forum (https://www.mybb.de/forum)
+-- Forum: Sonstiges (https://www.mybb.de/forum/forum-1.html)
+--- Forum: Programmierung (https://www.mybb.de/forum/forum-32.html)
+--- Thema: Item-Shop (/thread-20261.html)

Seiten: Seiten: 1 2 3 4 5


RE: Item-Shop - SHViperia - 09.03.2008

Wenn ich das wieder da oben einsetze, dann kommt genau die selbe meldung *komisch....*

PHP-Code:
        // Check if this post contains more images than the forum allows
        
if($post['savedraft'] != && $mybb->settings['maxpostimages']+=$mybb->user['maxpostimages'] != && $permissions['cancp'] != "yes")
        {
            require_once 
MYBB_ROOT."inc/class_parser.php";
            
$parser = new postParser;

            
// Parse the message.
            
$parser_options = array(
                
"allow_html" => $forum['allowhtml'],
                
"allow_mycode" => $forum['allowmycode'],
                
"allow_imgcode" => $forum['allowimgcode']
            );

            if(
$post['options']['disablesmilies'] != "yes")
            {
                
$parser_options['allow_smilies'] = $forum['allowsmilies'];
            }
            else
            {
                
$parser_options['allow_smilies'] = "no";
            }

            
$image_check $parser->parse_message($post['message'], $parser_options);

            
// And count the number of image tags in the message.
                
            
$image_count substr_count($image_check"<img");                        
            
$tmaxpostimages $mybb->user['maxpostimages']+=$mybb->settings['maxpostimages'];    
            
$mmaxpostimages $image_count-$tmaxpostimages;
            if(
$image_count $tmaxpostimages)           


// Throw back a message if over the count with the number of images as well as the maximum number of images per post.
                
$this->set_error("too_many_images", array(=> $image_count));
                    
                    if (
$mmaxpostimages 2)
                    {
                    
$z "";
                    }
                    else
                    {
                    
$z "en";
                    }
                
                if (
$tmaxpostimages $mybb->settings['maxpostimages'])
                    {
                    
$col "red";
                    }
                    else
                    {
                    
$col "green";
                    }
                
                
$this->set_error("too_many_images2", array(=> $col=> $tmaxpostimages=> $mmaxpostimages=>$z));
                return 
false;
                
            }
    } 



RE: Item-Shop - StefanT - 09.03.2008

Das ist interessant. Ich kann es mir aber nicht erklären.


RE: Item-Shop - SHViperia - 09.03.2008

Naja, ich habs erstmal weg gelassen....vllt. kommt ja jemand später mal auf die Lösung.

Würde mich freuen ^^


RE: Item-Shop - SHViperia - 11.03.2008

Nun doch noch was:

Wie schaffe ich es mit PHP, dass ein Datenbankeintrag der vorher schon da war, nicht mit den neuen Wert überschrieben wird, sondern hinzu ADDIERT wird ?

PHP-Code:
{
        
$query $this->db->query("SELECT * FROM ".TABLE_PREFIX."users WHERE uid='".$mybb->user['uid']."'");
        
$user $this->db->fetch_array($query);
    }
        
$this->db->query("UPDATE ".TABLE_PREFIX."users
                SET siglenght='"
.intval($this->mybb->users['siglenght'])."'++".intval($itemarray['siglenght']).", customtitlemaxlength='".intval($this->mybb->users['customtitlemaxlength'])."'++".intval($itemarray['customtitlemaxlength']).",maxsigimages='".intval($this->mybb->users['maxsigimages'])."'++".intval($itemarray['maxsigimages']).",maxavatardims='".$this->db->escape_string($itemarray['maxavatardims'])."',avatarsize='".intval($this->mybb->users['avatarsize'])."'++".intval($itemarray['avatarsize']).",maxattachments='".intval($this->mybb->users['maxattachments'])."'++".intval($itemarray['maxattachments']).",money_post='".intval($this->mybb->users['money_post'])."'++".intval($itemarray['money_post']).",money_thread='".intval($this->mybb->users['money_thread'])."'++".intval($itemarray['money_thread']).",smilieinsertertot='".intval($this->mybb->users['smilieinsertertot'])."'++".intval($itemarray['smilieinsertertot']).",color='".intval($this->mybb->users['color'])."'++'".intval($itemarray['color'])."',pic='".$this->db->escape_string($itemarray['pic'])."'
                WHERE
                    uid='"
.intval($this->mybb->user['uid'])."'
            "
); 

So schauts bis jetzt aus.
Klappt ja mit einem Item ganz gut.
Kauft man sich jetzt ein weiteres Item dazu, dann passiert genau der Mist, dass die vorherigen Werte durch die Werte des neuen Items ersetzt werden.

Macht aber mehr Sinn, wenn sie addiert werden.
Und beim Verkauf eines Items jeweils wieder subtrahiert...

Wie kann man das machen??


RE: Item-Shop - StefanT - 11.03.2008

Um welchen der ganzen Werte geht es denn?


RE: Item-Shop - SHViperia - 12.03.2008

Alle ab Siglenght. Außer Color und Pic


RE: Item-Shop - SHViperia - 19.03.2008

Okay, habe das Problem gelöst.

Aber jetzt bekomme ich folgenden Error:
Parse error: syntax error, unexpected T_STRING in /home/www/doc/16415/myonlinegame.de/www/GdO/admin/shop_admin.php on line 253

PHP-Code:
// ###################### Start Edit Item ###################
if($mybb->input['action'] == "edit_item")
{
   
$plugins->run_hooks("inventory_shop_admin_edit_item");
   
$query $db->simple_select(TABLE_PREFIX."shop""*""iid='".intval($mybb->input['iid'])."'");
 
$itemarray $db->fetch_array($query);
 if(!
$itemarray['iid'])
 {
  
cperror($lang->invalid_item);
 }
 
cpheader();
 
startform("shop_admin.php""""do_edit_item");
 
makehiddencode("iid"$mybb->input['iid']);
 
starttable();
 
tableheader($lang->edit_item);
 
makeinputcode($lang->name"name"$itemarray['name']);
 
makeinputcode($lang->price"price"$itemarray['price']);
 
makeinputcode($lang->siglenght"siglenght"$itemarray['siglenght']);
 
makeinputcode(Farbe"csl"$itemarray['csl']);
 
makeinputcode($lang->customtitlemaxlength"customtitlemaxlength"$itemarray['customtitlemaxlength']);
 
makeinputcode(Farbe"cctml"$itemarray['cctml']);
 
makeinputcode($lang->maxsigimages"maxsigimages"$itemarray['maxsigimages']);
 
makeinputcode(Farbe"cmsi"$itemarray['cmsi']);
 
makeinputcode($lang->maxavatardims"maxavatardims"$itemarray['maxavatardims']);
 
makeinputcode(Farbe"cmad"$itemarray['cmad']);
 
makeinputcode($lang->avatarsize"avatarsize"$itemarray['avatarsize']);
 
makeinputcode(Farbe"cas"$itemarray['cas']);
 
makeinputcode(Bild"pic"$itemarray['pic']);
 
makeinputcode(Farbe"color"$itemarray['color']);
 
makeinputcode($lang->maxattachments"maxattachments"$itemarray['maxattachments']);
 
makeinputcode(Farbe"cma"$itemarray['cma']);
 
makeinputcode($lang->money_post"money_post"$itemarray['money_post']);
 
makeinputcode(Farbe"cmp"$itemarray['cmp']);
 
makeinputcode($lang->money_thread"money_thread"$itemarray['money_thread']);
 
makeinputcode(Farbe"cmt"$itemarray['cmt']);
 
makeinputcode($lang->smilieinsertertot"smilieinsertertot"$itemarray['smilieinsertertot']);
 
makeinputcode(Farbe"csit"$itemarray['csit']);
 
makeinputcode(Saphir"saphir"$itemarray['saphir']);
 
makeinputcode(Farbe Saphir"csaphir"$itemarray['csaphir']);
 
makeinputcode(Smaragd"smaragd"$itemarray['smaragd']);
 
makeinputcode(Farbe Smaragd"csmaragd"$itemarray['csmaragd']);
 
makeinputcode(Rubin"rubin"$itemarray['rubin']);
 
makeinputcode(Farbe Rubin"crubin"$itemarray['crubin']);
 
makeinputcode($lang->shop"shop"$itemarray['shop']);
 
$plugins->run_hooks("inventory_shop_admin_edit_item_newinputs");
 
endtable();
 
endform($lang->update_item$lang->reset);

 
cpfooter();



keine Ahnung woran das wieder liegt..... hat jemand ne Lösung??


RE: Item-Shop - StefanT - 19.03.2008

Du kannst keine Wörter reinschreiben. Entweder eine Variable oder 'Wort';


RE: Item-Shop - SHViperia - 19.03.2008

Jo, super! Danke! Hat funktioniert habe einfach einen _ dazwischen gesetzt ^^


RE: Item-Shop - SHViperia - 19.03.2008

MySQL error: 1064
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''mybb_users' CHANGE 'shop3' 'shop3' VARCHAR( 120 ) NOT NULL' at line 1
Query: ALTER TABLE 'mybb_users' CHANGE 'shop3' 'shop3' VARCHAR( 120 ) NOT NULL


Wasn nun schonwieder falsch?

PHP-Code:
// ###################### Start Do Edit Shop ###################
if($mybb->input['action'] == "do_edit_shop")
{
// if(empty($mybb->input['shop']) || empty($mybb->input['shop_templatename']) || empty($mybb->input['shop_desc']))
// {
//  cperror($lang->error_fill_form);
// }
 
$editarray = array(
  
"sid" => intval($mybb->input['sid']),
  
"shop" => $db->escape_string($mybb->input['shop']),
  
"shop_templatename" => $db->escape_string($mybb->input['shop_templatename']),
  
"shop_desc" => $db->escape_string($mybb->input['shop_desc']),
  );
 
$plugins->run_hooks("inventory_shop_admin_do_edit_shop");
 
$db->update_query(TABLE_PREFIX."shops"$editarray"sid='".intval($mybb->input['sid'])."'");
 
$db->query("
  ALTER TABLE '"
.TABLE_PREFIX."users' CHANGE '".$db->escape_string($mybb->input['old_shop'])."' '".$db->escape_string($mybb->input['shop'])."' VARCHAR( 120 ) NOT NULL");
 
cpredirect("shop_admin.php?".SID$lang->shop_updated);