mirror of
https://gitlab.com/hashborgir/d2tools.git
synced 2025-10-13 16:34:23 -05:00
In memory images/invfiles, general sql cleanup
This commit is contained in:
@@ -82,12 +82,12 @@ ERROR: INVALID PATH</h1></center>';
|
||||
$_SESSION['tbl'] = $tbl;
|
||||
// Don't yell at me, security is the least of my considerations atm
|
||||
// check modname in db
|
||||
$sql = "SELECT * FROM `D2Modder` WHERE `modname`='$modname'";
|
||||
$res = PDO_FetchAll($sql);
|
||||
$sql = "SELECT * FROM D2Modder WHERE modname=?";
|
||||
$res = PDO_FetchAll($sql, [$modname]);
|
||||
|
||||
if (empty($res)) {
|
||||
$sql = "INSERT INTO D2Modder(`modname`,`path`,`tbl`,`lastused`) VALUES(\"$modname\",\"$path\",\"$tbl\",$time)";
|
||||
PDO_Execute($sql);
|
||||
$sql = "INSERT INTO D2Modder(`modname`,`path`,`tbl`,`lastused`) VALUES(?, ?, ?, ?)";
|
||||
PDO_Execute($sql, [$modname, $path, $tbl, $time]);
|
||||
}
|
||||
header("Location: /processFiles.php");
|
||||
}
|
||||
@@ -123,11 +123,11 @@ ERROR: INVALID PATH</h1></center>';
|
||||
$_SESSION['tbl'] = $path;
|
||||
// Don't yell at me, security is the least of my considerations atm
|
||||
// check modname in db
|
||||
$sql = "SELECT * FROM `D2Modder` WHERE modname='$modname'";
|
||||
$res = PDO_FetchAll($sql);
|
||||
$sql = "SELECT * FROM D2Modder WHERE modname=?";
|
||||
$res = PDO_FetchAll($sql, [$modname]);
|
||||
if (empty($res)) {
|
||||
$sql = "INSERT INTO `D2Modder` (`modname`,`path`,`tbl`,`lastused`) VALUES(\"$modname\",\"$path\",\"$path\",$time)";
|
||||
PDO_Execute($sql);
|
||||
$sql = "INSERT INTO D2Modder (`modname`,`path`,`tbl`,`lastused`) VALUES(?, ?, ?, ?)";
|
||||
PDO_Execute($sql, [$modname, $path, $tbl, $time]);
|
||||
}
|
||||
header("Location: /processFiles.php");
|
||||
}
|
||||
@@ -143,7 +143,7 @@ require_once "head.php";
|
||||
<body style="background: white;">
|
||||
<div class="center container container-top">
|
||||
|
||||
<img src="/img/Diablo2.png" style="float:left"><h1 syle="display:inline; font-weight: 900"><?php echo $title . " " . $version; ?><span style="font-family: Lato !important; font-size: 14px;"> <?php echo " By" . $author ?></span></h1>
|
||||
<img src="/img/Diablo2.png" style="float:left"><h1 syle="display:inline; font-weight: 900"><?php echo $title . " " . $version; ?><span style="font-family: Lato !important; font-size: 14px;"> <?php echo " By: " . $author ?></span></h1>
|
||||
<a class="btn btn-outline-danger" style="color:red; font-size: 18px;float:right;" href="/">X</a>
|
||||
<hr style="margin: 60px;">
|
||||
<div class="offset-2 col-8">
|
||||
|
@@ -1,8 +1,35 @@
|
||||
<?php
|
||||
|
||||
class D2ItemData {
|
||||
|
||||
|
||||
public $strings;
|
||||
public $images;
|
||||
|
||||
public function getImages() {
|
||||
$sql = "
|
||||
SELECT code,invfile,type,type2 FROM armor
|
||||
UNION ALL
|
||||
SELECT code,invfile,type,type2 FROM misc
|
||||
UNION ALL
|
||||
SELECT code,invfile,type,type2 FROM weapons
|
||||
";
|
||||
|
||||
$res = PDO_FetchAll($sql);
|
||||
|
||||
$isc = null;
|
||||
foreach ($res as $r) {
|
||||
$isc1[$r['code']] = $r;
|
||||
$isc1[$r['code']]['code'] = $r['prop'];
|
||||
|
||||
$isc2[$r['type']] = $r;
|
||||
$isc2[$r['type']]['type'] = $r['prop'];
|
||||
}
|
||||
|
||||
$this->images = array_merge($isc1, $isc2);
|
||||
|
||||
unset($isc1);
|
||||
unset($isc2);
|
||||
}
|
||||
|
||||
public function uniqueItems($index, $doc = FALSE) {
|
||||
// This is where we get props for each item
|
||||
@@ -22,41 +49,51 @@ class D2ItemData {
|
||||
*
|
||||
*
|
||||
*/
|
||||
|
||||
if (empty($this->images)) {
|
||||
$this->getImages();
|
||||
}
|
||||
|
||||
|
||||
if (empty($res['invfile'])) {
|
||||
// if (empty($res['invfile'])) {
|
||||
|
||||
|
||||
$res['invfile'] = $this->images[$res['code']]['invfile'];
|
||||
|
||||
$return = $res;
|
||||
|
||||
// if no invfile, get from other tables
|
||||
// try to get from armor, weapons, misc
|
||||
|
||||
$sql = "SELECT invfile FROM armor WHERE code=?";
|
||||
$invfile[] = PDO_FetchRow($sql, [$res['code']]);
|
||||
|
||||
$sql = "SELECT invfile FROM weapons WHERE code=?";
|
||||
$invfile[] = PDO_FetchRow($sql, [$res['code']]);
|
||||
|
||||
$sql = "SELECT invfile FROM misc WHERE code=?";
|
||||
$invfile[] = PDO_FetchRow($sql, [$res['code']]);
|
||||
|
||||
$invfile = array_filter($invfile);
|
||||
|
||||
foreach ($invfile as $i) {
|
||||
$x[] = $i;
|
||||
}
|
||||
|
||||
if (!empty($x[0])) {
|
||||
$x[0] = array_filter($x[0]);
|
||||
}
|
||||
$invClean = $x[0];
|
||||
if (!empty($invClean)) {
|
||||
$return = array_merge($res, $invClean);
|
||||
} else {
|
||||
$return = $res;
|
||||
}
|
||||
// $sql = "SELECT invfile FROM armor WHERE code=?";
|
||||
// $invfile[] = PDO_FetchRow($sql, [$res['code']]);
|
||||
//
|
||||
// $sql = "SELECT invfile FROM weapons WHERE code=?";
|
||||
// $invfile[] = PDO_FetchRow($sql, [$res['code']]);
|
||||
//
|
||||
// $sql = "SELECT invfile FROM misc WHERE code=?";
|
||||
// $invfile[] = PDO_FetchRow($sql, [$res['code']]);
|
||||
//
|
||||
// $invfile = array_filter($invfile);
|
||||
//
|
||||
// foreach ($invfile as $i) {
|
||||
// $x[] = $i;
|
||||
// }
|
||||
//
|
||||
// if (!empty($x[0])) {
|
||||
// $x[0] = array_filter($x[0]);
|
||||
// }
|
||||
// $invClean = $x[0];
|
||||
// if (!empty($invClean)) {
|
||||
// $return = array_merge($res, $invClean);
|
||||
// } else {
|
||||
// $return = $res;
|
||||
// }
|
||||
|
||||
//$return = array_merge($res, $invClean);
|
||||
} else {
|
||||
$return = $res;
|
||||
}
|
||||
// } else {
|
||||
// $return = $res;
|
||||
// }
|
||||
|
||||
// var_dump($return);
|
||||
/*
|
||||
@@ -107,16 +144,14 @@ class D2ItemData {
|
||||
//
|
||||
//
|
||||
// ( Also need func1 and val1 for each prop )
|
||||
|
||||
//
|
||||
// for each prop, get stat
|
||||
$counter = 1;
|
||||
foreach ($props as $key => $val) {
|
||||
// val = Prop1,Prop2 etc.
|
||||
// for each propr, get all 7 stats in ISC
|
||||
|
||||
// for now only get stat1, and for else, use dgrp
|
||||
|
||||
|
||||
$sql = "SELECT stat1 FROM properties WHERE code = ?";
|
||||
$props[$key]['stat'] = PDO_FetchRow($sql, [$val['prop' . $counter]]);
|
||||
|
||||
@@ -151,12 +186,12 @@ class D2ItemData {
|
||||
'string1' => $v['desc']['string1'],
|
||||
'string2' => $v['desc']['string2'],
|
||||
'gstring1' => $v['desc']['gstring1'],
|
||||
'gstring2' => $v['desc']['gstring2'],
|
||||
'gstring2' => $v['desc']['gstring2'],
|
||||
'descfunc' => $v['desc']['descfunc'],
|
||||
'descval' => $v['desc']['descval'],
|
||||
'dgrp' => $v['desc']['dgrp'],
|
||||
'dgrpfunc' => $v['desc']['dgrpfunc'],
|
||||
'dgrpval' => $v['desc']['dgrpval'],
|
||||
'dgrpval' => $v['desc']['dgrpval'],
|
||||
"prop" => $return['prop' . $counter],
|
||||
"par" => $return['par' . $counter],
|
||||
"min" => $return['min' . $counter],
|
||||
@@ -288,15 +323,12 @@ class D2ItemData {
|
||||
|
||||
public function getIscStrings($iscStat) {
|
||||
|
||||
|
||||
if (empty($this->strings)){
|
||||
|
||||
if (empty($this->strings)) {
|
||||
$this->getStrings();
|
||||
}
|
||||
|
||||
|
||||
return ($this->strings[$iscStat]);
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
public function getStrings() {
|
||||
@@ -333,14 +365,13 @@ class D2ItemData {
|
||||
";
|
||||
|
||||
// where p.code = iscstat
|
||||
|
||||
|
||||
$strings = PDO_FetchAll($sql);
|
||||
|
||||
|
||||
|
||||
//var_dump($strings);
|
||||
foreach($strings as $k => $v){
|
||||
foreach ($strings as $k => $v) {
|
||||
$this->strings[$v['prop']] = $v;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
Reference in New Issue
Block a user