update mysql library

This commit is contained in:
2015-12-10 23:15:37 +01:00
parent 174b559464
commit 5aa9105fc3
2 changed files with 21 additions and 5 deletions

View File

@@ -12,6 +12,7 @@ abstract class Main extends PhpObject
const ERROR = 'error'; const ERROR = 'error';
const UNAUTHORIZED = 'unauthorized'; const UNAUTHORIZED = 'unauthorized';
const NOT_FOUND = 'unknown action'; const NOT_FOUND = 'unknown action';
const NO_DATA = 'No Data';
//... //...
//Folders //Folders
@@ -148,7 +149,7 @@ abstract class Main extends PhpObject
public static function getJsonResult($bSuccess, $sDesc, $asVars=array()) public static function getJsonResult($bSuccess, $sDesc, $asVars=array())
{ {
header('Content-type: application/json'); header('Content-type: application/json');
return json_encode(array('result'=>$bSuccess?self::SUCCESS:self::ERROR, 'desc'=>ToolBox::mb_ucwords($sDesc))+$asVars); return json_encode(array('result'=>$bSuccess?self::SUCCESS:self::ERROR, 'desc'=>ToolBox::mb_ucwords($sDesc), 'data'=>$asVars));
} }
} }

View File

@@ -334,9 +334,10 @@ class MySqlManager extends PhpObject
public function updateRows($sTableName, $asConstraints, $asData, $iLimit=0) public function updateRows($sTableName, $asConstraints, $asData, $iLimit=0)
{ {
$sTableIdCol = self::getId($sTableName);
if(!is_array($asConstraints)) if(!is_array($asConstraints))
{ {
$asConstraints = array($this->getId($sTableName)=>$asConstraints); $asConstraints = array($sTableIdCol=>$asConstraints);
} }
$this->cleanSql($sTableName); $this->cleanSql($sTableName);
@@ -356,7 +357,12 @@ class MySqlManager extends PhpObject
$iResult = false; $iResult = false;
if($this->setQuery($sQuery)) if($this->setQuery($sQuery))
{ {
$iResult = ($iLimit==1)?$this->selectValue($sTableName, $this->getId($sTableName), $asConstraints):true; $this->setTrace(true);
if($iLimit==1)
{
$iResult = array_key_exists($sTableIdCol, $asConstraints)?$asConstraints[$sTableIdCol]:$this->selectValue($sTableName, $sTableIdCol, $asConstraints);
}
else $iResult = true;
} }
return $iResult; return $iResult;
} }
@@ -385,7 +391,7 @@ class MySqlManager extends PhpObject
{ {
unset($asData[$sTableIdName]); unset($asData[$sTableIdName]);
} }
$iTableId = $this->updateRow($sTableName, $iTableId, $asData); $this->updateRow($sTableName, $iTableId, $asData);
} }
return $iTableId; return $iTableId;
} }
@@ -438,13 +444,22 @@ class MySqlManager extends PhpObject
$sIdColumnName); $sIdColumnName);
} }
public function selectRows($asInfo, $bStringOnly=true, $sGroupBy='') public function selectRows($asInfo, $sGroupBy='', $bStringOnly=true)
{ {
$asAttributes = array('select'=>"SELECT", 'from'=>"FROM", 'join'=>"LEFT JOIN", 'joinOn'=>"LEFT JOIN", 'constraint'=>"WHERE", 'groupBy'=>"GROUP BY", 'orderBy'=>"ORDER BY", 'limit'=>'LIMIT'); $asAttributes = array('select'=>"SELECT", 'from'=>"FROM", 'join'=>"LEFT JOIN", 'joinOn'=>"LEFT JOIN", 'constraint'=>"WHERE", 'groupBy'=>"GROUP BY", 'orderBy'=>"ORDER BY", 'limit'=>'LIMIT');
$asRowSeparators = array('select'=>", ", 'from'=>"", 'join'=>" LEFT JOIN ", 'joinOn'=>" LEFT JOIN ", 'constraint'=>" AND ", 'groupBy'=>", ", 'orderBy'=>", ", 'limit'=>""); $asRowSeparators = array('select'=>", ", 'from'=>"", 'join'=>" LEFT JOIN ", 'joinOn'=>" LEFT JOIN ", 'constraint'=>" AND ", 'groupBy'=>", ", 'orderBy'=>", ", 'limit'=>"");
$asOperators = array('constraint'=>" = ", 'orderBy'=>" ", 'join'=>" USING(", 'joinOn'=>" ON "); $asOperators = array('constraint'=>" = ", 'orderBy'=>" ", 'join'=>" USING(", 'joinOn'=>" ON ");
$asEndOfStatement = array('constraint'=>"", 'orderBy'=>"", 'join'=>")", 'joinOn'=>""); $asEndOfStatement = array('constraint'=>"", 'orderBy'=>"", 'join'=>")", 'joinOn'=>"");
//Get table by key
if($sGroupBy===true)
{
$sGroupBy = self::getId($asInfo['from']);
//Add id to selection
if(isset($asInfo['select']) && $asInfo['select'][0]!="*") $asInfo['select'][] = $sGroupBy;
}
$sQuery = ""; $sQuery = "";
foreach($asAttributes as $sStatement => $sKeyWord) foreach($asAttributes as $sStatement => $sKeyWord)
{ {