Ir para conteúdo
Fórum Script Brasil

Donnerak

Membros
  • Total de itens

    33
  • Registro em

  • Última visita

Tudo que Donnerak postou

  1. Boa Tarde Por gentileza. O código abaixo cria um link com o nome de um monstro ($m['name']) e a porcentagem de largar um item ($m['dropper']). o resultado gerado é: Poeira (0.01%) que no caso é o link. quando eu passar o mouse sobre Poeira (0.01%) eu gostaria que aparecesse a imagem do monstro poeira que no caso seria pego com o link: http://site.com/media/monster/$m['id'].gif $alice .= "<a href=\"http://" . "/site.com/?act=teste". $m['id'] ."\">". $m['name'] ."</a>$mBind (". $m['dropper'] ."%) -- "; Agradeço a colaboração.
  2. Donnerak

    PHP+SQL Injeção

    Não entendi. o link que fiz o scan para testar era semelhante a este http://sdb.com/?ittem=ittemsearch&cid=on&id=29572
  3. Donnerak

    PHP+SQL Injeção

    Depois que finalizei tudo que tinha para fazer fui testar o site usando um scanner de vulnerabilidade de sql e para estragar tudo o programa pegou tudo do banco de dados, todas as tabelas e informações nelas contidas... Preciso de ajuda para tornar este código abaixo que é o responsável pelas buscas protegido contra SQL Injection. <?php if(!defined('EFFICIENT_ROOT')) exit; function SEARCH_ITEMS($get, $dbstruct) { $idbs = $dbstruct['item_src']; // Import active GET data $getVariables = array( 'cid', 'ccsrc', 'cname', 'cweight', 'oweight', 'ctype', 'cprice', 'oprice', 'cdesc', 'cdisplayorder', 'id', 'name', 'desc', 'weight', 'type', 'price', 'displayorder' ); foreach($get as $getKey => $getData) { if(in_array($getKey, $getVariables)) { ${$getKey} = $getData; } } // Check if ID, WEIGHT, ITEM TYPE, DISPLAYORDER and PRICE are numeric values if(isset($id) && isset($cid)) { if(!intval($id)){ unset($cid); } } if(isset($weight) && isset($cweight)) { if(!intval($weight)){ unset($cweight); } } if(isset($type) && isset($ctype)) { if(!intval($type)){ unset($ctype); } } if(isset($price) && isset($cprice)) { if(!intval($price)){ unset($cprice); } } if(isset($displayorder)) { if(!intval($displayorder)){ unset($cdisplayorder); } } // Build QUERY $continue=0; $ITEM_SEARCH = "SELECT * FROM " . $dbstruct['tables']['item_src']; /* // View custom items if(isset($ccsrc)) { $customItems = explode(" ", CUSTOM_ITEM); $g=0; foreach($customItems as $customItem) { if($g == FALSE) { $ITEM_SEARCH .= " WHERE"; } else { $ITEM_SEARCH .= " OR"; } $ITEM_SEARCH .= " " . COL_IID . "='$customItem'"; $g++; } } */ // Note: if item ID is set the DB will not check any other values // in-game id if(isset($cid)) $ITEM_SEARCH .= " WHERE " . $idbs['id'] . "='$id'"; // in case no item id is set search the other values else { // name (displayed) if(!empty($cname)) { $ITEM_SEARCH .= " WHERE " . $idbs['name1'] . " LIKE '%" . addslashes($name) . "%'"; $continue = 1; } // function for adding weight and price search to query function query_add($query,$value,$checkbox,$limiter,$isearch_value,&$continue) { if(!empty($checkbox)) { switch($limiter) { case 1: $bind = ">"; break; case 2: $bind = "<"; break; default: $bind = "="; } $query .= " " . bindQuery($continue) . " " . $isearch_value . $bind . $value; $continue = 1; } return $query; } if(isset($cweight)) $ITEM_SEARCH = query_add($ITEM_SEARCH,$weight*10,$cweight,$oweight,$idbs['weight'],$continue); if(isset($cprice)) $ITEM_SEARCH = query_add($ITEM_SEARCH,$price,$cprice,$oprice,$idbs['value_b'],$continue); // item type if(isset($ctype)) { if($type == 13) { $ITEM_SEARCH .= " ". bindQuery($continue) ." " . $idbs['type'] . "='2' OR " . $idbs['type'] . "='11'"; } else { $ITEM_SEARCH .= " ". bindQuery($continue) ." " . $idbs['type'] . "=$type"; } $continue = 1; } // Description search if(isset($cdesc)) { $desc = split(',',preg_replace("/ /","",$desc)); foreach($desc as $ea_desc) { $LINKER = ($continue == 1) ? "AND" : "WHERE"; if(strlen($ea_desc) < 3) { continue; } else { if(substr($ea_desc, 0, 1) == " ") { $ea_desc = substr($ea_desc, 1); } $ITEM_SEARCH .= " $LINKER " . $idbs['desc'] . " LIKE '%" . addslashes($ea_desc) . "%'"; $continue = 1; } } } } // Display order if(isset($cdisplayorder) && isset($displayorder)) { switch($displayorder) { case 100: $ORDERTYPE = $idbs['name1']; break; case 200: $ORDERTYPE = $idbs['name1'] . " DESC"; break; default: $ORDERTYPE = $idbs['id']; } $ITEM_SEARCH .= " ORDER BY " . $ORDERTYPE; } // Debug: display query if(DEBUG == TRUE) debugHandler("Current query is <code>" . $ITEM_SEARCH . "</code>"); // Query the database return $ITEM_SEARCH; } ?>
  4. Boa Tarde. Estou desde cedo tentando fazer com que meus resultados apareçam de acordo com a FIGURA 1 porém eles aparecem desorganizados igual a FIGURA 2. O código que gera as informações que serão mostradas na página de resultados é esse: (em especial a parte em vermelho) // pega os mapas onde o monstro mora $Spawns = unserialize($this->getAttr('spawns')); if(is_array($Spawns)) { $pASD=""; foreach($Spawns as $cS => $sP) { $mname = $cS; $title = $sP['map_name']; $count = $sP['amount']; if($count==FALSE) continue; else $pASD .="<img src='media/maps2/{$mname}.png' border='0'/> <a href=\"?act=fieldview&field={$mname}\">{$title}</a> ({$mname}) [{$count}]"; } $Spawns = substr($pASD,0,-2); } if(!is_string($Spawns) || strlen($Spawns)==0) $Spawns = "<center>N/A</center>"; $this->setAttr('spawns', $Spawns); // final do código que pega os mapas onde o monstro mora $mname = ayo_fild02 por exemplo. $title = Campos de Ayothaya por exemplo. $count = [20] por exemplo. Alguém pode poderia me dar uma mão já tentei css, html e nada... pesquisei bastante no google mas nada deu resultado. Eu preciso que a cada 3 resultados pule para uma nova linha. FIGURA 1: FIGURA 2: Obrigado pela atenção.
  5. Donnerak

    Consulta SQL+PHP

    @JaguA Usei Left Join, funcionou perfeitamente. Obrigado pela ajuda e atenção. [Resolvido]
  6. Donnerak

    Consulta SQL+PHP

    desculpe esqueci de citar... tabela spawns possui o campo mob_id que é o mesmo valor do campo ID da tabela mob_db
  7. Donnerak

    Consulta SQL+PHP

    Boa Tarde Tenho 02 tabelas sql uma delas chama-se mob_db e a outra spawns. Preciso realizar uma consulta que mostre os resultados em uma tabela somente dos registros que sejam diferentes de 0 no campo mvp1id tabela mob_db: campos: ID, iName, mvp1id tabela spawns: campo: delay1 vejam o exemplo na imagem.
  8. Boa Tarde Estou com essas 2 tabelas para serem importadas, ambas tem dados com acentos e estão definidas para charset = utf-8. Porém a tabela item_db quando eu importo os acentos funcionam perfeitamente, já a mob_db não funcionam os acentos por exemplo Escorpião vira Escorp. Não entendo já que as 2 usam charset=utf-8 não deveriam acentuar iguais? Vejam trechos das tabelas: Item db (que acentua correto) ITEM_DB CREATE TABLE IF NOT EXISTS item_db ( id smallint(5) unsigned NOT NULL DEFAULT '0', name_english varchar(50) NOT NULL DEFAULT '', script text, equip_script text, unequip_script text, PRIMARY KEY (id) ) ENGINE=MyISAM DEFAULT CHARSET=utf8; REPLACE INTO item_db (id, name_english, name_japanese, type) VALUES (501, 'Red_Potion', 'Poção Vermelha', 0,), -------------------------------------------------------------------------------------------------------------------------------------- Mob_db (que acentua errado) DROP TABLE IF EXISTS mob_db; CREATE TABLE mob_db ( ID mediumint(9) unsigned NOT NULL default '0', Sprite text NOT NULL, kName text NOT NULL, PRIMARY KEY (ID) ) ENGINE=MyISAM DEFAULT CHARSET=utf8; REPLACE INTO mob_db VALUES (1001,'SCORPION','Escorpião','Escorpião',24,); --------------------------------------------------------------------------------------------------------------------------------------
×
×
  • Criar Novo...