Switch to PDO model

Switch to PDO model and correct transactions
This commit is contained in:
steve-lad 2021-02-06 17:26:37 +01:00 committed by Diederik de Groot
parent fd8c5f9f96
commit cfcbe23816
No known key found for this signature in database
GPG key ID: AFA728250A1BECD6

View file

@ -45,7 +45,6 @@ class dbinterface
public function HWextension_db_SccpTableData($dataid, $data = array()) public function HWextension_db_SccpTableData($dataid, $data = array())
{ {
// $stmt is a single row fetch, $stmts is a fetchAll.
global $db; global $db;
$stmt = ''; $stmt = '';
$stmts = ''; $stmts = '';
@ -60,7 +59,7 @@ class dbinterface
$stmts = $db->prepare('SELECT * FROM sccpline WHERE name = $data[name]'); $stmts = $db->prepare('SELECT * FROM sccpline WHERE name = $data[name]');
} }
break; break;
case 'SccpDevice': case "SccpDevice":
$filtered =''; $filtered ='';
$singlerow = false; $singlerow = false;
if (empty($data['fields'])) { if (empty($data['fields'])) {
@ -128,7 +127,7 @@ class dbinterface
. 'LEFT JOIN sccpdevmodel as addon ON t1.addon=addon.model WHERE name="' . $data['id'] . ''; . 'LEFT JOIN sccpdevmodel as addon ON t1.addon=addon.model WHERE name="' . $data['id'] . '';
$stmt = $db->prepare($sql); $stmt = $db->prepare($sql);
break; break;
case 'get_sccpuser': case "get_sccpuser":
$sql = 'SELECT * FROM sccpuser '; $sql = 'SELECT * FROM sccpuser ';
if (!empty($data['id'])) { if (!empty($data['id'])) {
$sql .= 'WHERE name= ' . $data['id'] . ''; $sql .= 'WHERE name= ' . $data['id'] . '';
@ -200,7 +199,7 @@ class dbinterface
if (strpos($filter['model'], 'loadInformation')) { if (strpos($filter['model'], 'loadInformation')) {
$sql = 'SELECT ' . $sel_inf . ' FROM sccpdevmodel WHERE (loadinformationid =' . $filter['model'] . ') ORDER BY model'; $sql = 'SELECT ' . $sel_inf . ' FROM sccpdevmodel WHERE (loadinformationid =' . $filter['model'] . ') ORDER BY model';
} else { } else {
$sql = 'SELECT ' . $sel_inf . ' FROM sccpdevmodel WHERE (loadinformationid = loadInformation' . $filter['model'] . ') ORDER BY model'; $sql = 'SELECT ' . $sel_inf . ' FROM sccpdevmodel WHERE (loadinformationid =loadInformation' . $filter['model'] . ') ORDER BY model';
} }
} else { } else {
// $sql = "SELECT ".$filter['model']; // $sql = "SELECT ".$filter['model'];
@ -321,27 +320,29 @@ class dbinterface
$result = $db->prepare($req)->execute(); $result = $db->prepare($req)->execute();
break; break;
case 'sccpbuttons': case 'sccpbuttons':
switch ($mode) { if (($mode == 'clear') || ($mode == 'delete')) {
case 'clear': // no break here as clear is same as delete
case 'delete':
$sql = 'DELETE FROM sccpbuttonconfig WHERE ref=' . $hwid . ''; $sql = 'DELETE FROM sccpbuttonconfig WHERE ref=' . $hwid . '';
$result = $db->prepare($sql)->execute(); $result = $db->prepare($sql)->execute();
}
if ($mode == 'delete') {
break; break;
case 'replace': }
if (!empty($save_value)) { if (empty($save_value)) {
break;
}
if ($mode == 'replace') {
$sql = 'UPDATE sccpbuttonconfig SET `name`=? WHERE `ref`= ? AND `reftype`=? AND `instance`=? AND `buttontype`=?'; $sql = 'UPDATE sccpbuttonconfig SET `name`=? WHERE `ref`= ? AND `reftype`=? AND `instance`=? AND `buttontype`=?';
// $sql = 'INSERT INTO `sccpbuttonconfig` (`ref`, `reftype`,`instance`, `buttontype`, `name`, `options`) VALUES (?,?,?,?,?,?);';
// die(print_r($save_value,1));
$stmt = $db->prepare($sql); $stmt = $db->prepare($sql);
$result= $db->executeMultiple($stmt, $save_value); $result= $db->executeMultiple($stmt, $save_value);
} } else {
break;
default:
if (!empty($save_value)) {
$sql = 'INSERT INTO sccpbuttonconfig (`ref`, `reftype`,`instance`, `buttontype`, `name`, `options`) VALUES (?,?,?,?,?,?)'; $sql = 'INSERT INTO sccpbuttonconfig (`ref`, `reftype`,`instance`, `buttontype`, `name`, `options`) VALUES (?,?,?,?,?,?)';
// die(print_r($save_value,1));
$stmt = $db->prepare($sql); $stmt = $db->prepare($sql);
$result = $db->executeMultiple($stmt, $save_value); $result = $db->executeMultiple($stmt, $save_value);
} }
} }
}
return $result; return $result;
} }