[Release] ItemShop Bug fix!!

05/03/2011 01:46 rcracing#1
Hallo Liebe epvpers


Ich habe letzens mal ein thema gelesen wo mann den bug ber Quest beheben kann das wenn sich leute in einem Itemshop sachen kaufen die ein gm dann ingame entbuggen muss.

Hatte Selber die Quest verwendet alls ich heute mal genauer alles durch gegangen bin. fand ich kleine striche die hier[ "' ]

ok So nun probierte ich was aus ne zahl rein zu machen und wollllllaaaaaa

Das ding funktioniert wieder.


Mann kann nun im Itemshop kaufen ohne ingame entbuggen zu müssen.
Es gehen wieder Steine,Bonis ect rein.

Geht bei allen Versionen von Hennink. Wurde getestet 1000%

Ändern in der is_buy.php


es gab zu viele verwechslungen:

DAS IST NUR EINE BEISPIEL PHP DIE WURDE NET ENTBUGGT NUR DER BEWEIS DAS DER BUG WEG IST ÄNDERT DIE ZAHLEN IN EUERE IS_BUY.PHP

PHP Code:
<?PHP

  
if(isset($_SESSION['user_admin']) && checkInt($_SESSION['user_admin']) && $_SESSION['user_admin']>=0) {
  
    if(isset(
$_GET['id']) && checkInt($_GET['id'])) {
    
      
$sqlCmd="SELECT vnum, preis, attrtype0, attrvalue0, attrtype1, attrvalue1, attrtype2, attrvalue2, attrtype3, attrvalue3, attrtype4, attrvalue4, attrtype5, attrvalue5, attrtype6, attrvalue6, socket0, socket1, socket2 FROM ".SQL_HP_DB.".is_items WHERE id='".$_GET['id']."' LIMIT 1";
      
$sqlQry=mysql_query($sqlCmd,$sqlHp);
      if(
mysql_num_rows($sqlQry)==1) {
      
        
$getItem=mysql_fetch_object($sqlQry);
        if(
$_SESSION['user_coins']>=$getItem->preis) {
      
          
$getGroesse compareItems($getItem->vnum);
          
$belPos checkPos($_SESSION['user_id']);
          
$possiblePos findPos($belPos['islager'],$getGroesse['groesse']);
          if(!empty(
$possiblePos)) {
          
            
$sqlCmd="UPDATE account.account SET coins=coins-".$getItem->preis." WHERE id='".$_SESSION['user_id']."' LIMIT 1";
            
$sqlQry=mysql_query($sqlCmd,$sqlServ);
            
$sqlLog="INSERT INTO ".SQL_HP_DB.".is_log (account_id,vnum,preis,zeitpunkt) VALUES ('".$_SESSION['user_id']."','".$getItem->vnum."','".$getItem->preis."','".$sqlZeit."')";
            
$qryLog=mysql_query($sqlLog,$sqlHp);
            
$sqlItem="INSERT INTO player.item 
            (owner_id,window,pos,count,vnum,attrtype0, attrvalue0, attrtype1, attrvalue1, attrtype2, attrvalue2, attrtype3, attrvalue3, attrtype4, attrvalue4, attrtype5, attrvalue5, attrtype6, attrvalue6, socket0, socket1, socket2)
            VALUES 
            ('"
.$_SESSION['user_id']."','MALL','".$possiblePos[0]."','1','".$getItem->vnum."','".$getItem->attrtype0."', '".$getItem->attrvalue0."', '".$getItem->attrtype1."', '".$getItem->attrvalue1."', '".$getItem->attrtype2."', '".$getItem->attrvalue2."', '".$getItem->attrtype3."', '".$getItem->attrvalue3."', '".$getItem->attrtype4."', '".$getItem->attrvalue4."', '".$getItem->attrtype5."', '".$getItem->attrvalue5."', '".$getItem->attrtype6."', '".$getItem->attrvalue6."', '".$getItem->socket0."1', '".$getItem->socket1."1', '".$getItem->socket2."1')";
            
$qryItem=mysql_query($sqlItem,$sqlServ) or die(mysql_error());
            echo
'<p class="meldung">Das item wurde erfolgreich gekauft. Sollte das Item nicht im Lager erscheinen, bitte umgehend bei einem Admin melden.</p>';
            
          }
          else {
            echo
'<p>Sie haben nicht genügend Platz in ihrem Itemshop-Lager. Ihr Guthaben wurde nicht verändert.</p>';
          }
          
        }
        else {
          echo
'<p class="meldung">Sie haben nicht genug Coins.</p>';
        }
      }
      else {
        echo
'<p class="meldung">Das angegebe Item existiert nicht.</p>';
      }
    }
    else {
      echo
'<p class="meldung">Es wurde keine gültige ID eingegeben.</p>';
    }
    echo
'<p><a href="javascript:history.back()">zurück</a></p>';
  }
  else {
    echo
'<p class="meldung">Sie müssen für diesen Bereich angemeldet sein.</p>';
  }
?>


ÄNDERT GENAU DAS

'".$getItem->socket0."', '".$getItem->socket1."', '".$getItem->socket2."')";


IN DAS IN EUERE IS_BUY

'".$getItem->socket0."1', '".$getItem->socket1."1', '".$getItem->socket2."1')";






Blöde Kommentare könnt ihr euch sparen ect den sowas hab ich in der Sufu ect nicht gefunden. Ein thema hab ich gesehen aber dort ist auch die beschreiben total fürn arsch



MFG
05/03/2011 02:36 .Risan.#2
unnötig, hen! hat doch gesagt das man bei socket nur 1 eintrage muss.
Dazu ist deine Variante buggy:
EXP-Ringe usw. würden bei dir nicht mehr funktionieren..
05/03/2011 03:37 ebert.tonna#3
Super ich würde das Script löschen weil das ist zwar nett gemeint aber völlig buggi.
Schau mal aufs Bild was bei rauskam als ich dein Script mal getestet habe.
[Only registered and activated users can see links. Click Here To Register...]
05/03/2011 06:36 thesone007#4
xDDD Release mal total Fail xD
05/03/2011 07:31 ~LuckyStrike~#5
Was würde Simon Desue dazu nur sagen ... achja ich weiß es

"Un-NöTiG" :P

Ist zwar nett gemeint aber davor sollte man sich über den neusten stand Informieren
05/03/2011 12:51 tfive#6
OH MY GOOD THANKS!
05/03/2011 13:55 lautlosertot#7
@woody wo genau den^^
05/03/2011 13:56 Sphinx²#8
tfive don't use the script.
Thats buggy.

Mfg Sphinx
05/03/2011 15:04 LS-fanfan#9
Quote:
Originally Posted by ebert.tonna View Post
Super ich würde das Script löschen weil das ist zwar nett gemeint aber völlig buggi.
Schau mal aufs Bild was bei rauskam als ich dein Script mal getestet habe.
[Only registered and activated users can see links. Click Here To Register...]
geil :D

Auf Fun-Servern ist das script ein unbedingter muss!!!!
Deshalb nix unnötig...^^
05/03/2011 15:54 .Keyto#10
naja lustiges script ^^
05/03/2011 16:32 IgorGlock#11
man kann Hennik auf "falls vorhandenen" Fehler hinweisen und der würde kein Problem damit haben. Falls er Zeit|Lust haben wird, wird er diesen "angeblichen Bug" beheben.
05/03/2011 17:13 rcracing#12
das soll mann ja auch net verwenden sonder nur die zahlen in seiner jeweilligen is_buy datei das das buggy ist weiß ich auch. :) nur die zahlen ändern so wie in der beispiels datei oben

da es hallt manche nicht hinbekommen ganu einfach
05/03/2011 20:02 .Risan.#13
Quote:
Originally Posted by IgorGlock View Post
man kann Hennik auf "falls vorhandenen" Fehler hinweisen und der würde kein Problem damit haben. Falls er Zeit|Lust haben wird, wird er diesen "angeblichen Bug" beheben.
.. IgorGlock, ich muss dir wiedersprechen.
Das ist kein bug und wird dir auch hen! sagen.
Man kann doch selber, wenn man ne Waffe einträgt, diese werte bei socket eintragen, hat er mir auch gesagt.
Denke doch mal an den EXP-ring usw.. Dann würde der nur noch 1 Minuten usw. laufen wenn man dies direkt in is_buy.php abändern würde..

mfg Risan aka Woody
05/03/2011 20:17 tfive#14
Sphinx Sorry :S
05/03/2011 20:24 .Banana™#15
Ein Thanks für deine Mühe :)