|
| __construct ($dsn, $login, $password, $type='mysql') |
|
| init ($dsn, $login, $password, $type='mysql') |
|
| addQueries () |
|
| getLastId () |
|
| getType () |
|
& | getRecord ($tableOrView, $idname, $idvalue) |
|
| setRecord ($tableOrView, $row, $idname=null) |
|
& | getRecords ($tableOrView, $idname=null, $idvalues=null, $order=null, $paging=null) |
|
| setRecords ($tableOrView, $rows, $idname=null) |
|
| removeRecord ($table, $idname, $idvalue) |
|
| removeRecords ($tables, $idnames, $idvalues) |
|
& | query ($query, $params=null, $order=null, $paging=null, $fetchType=PDO::FETCH_ASSOC) |
|
| exec ($queries, $params=null, &$result=null) |
| exec('delete...') exec('delete... More...
|
|
| begin () |
|
| commit () |
|
| rollback () |
|
| il_to_pdo_dsn ($il_dsn) |
|
◆ __construct()
ilSCORM13DB::__construct |
( |
|
$dsn, |
|
|
|
$login, |
|
|
|
$password, |
|
|
|
$type = 'mysql' |
|
) |
| |
Definition at line 56 of file ilSCORM13DB.php.
References $dsn, and $type.
59 self::$DB =
new PDO(
$dsn, $login, $password);
60 }
catch (PDOException $e) {
61 error_log(
"Error!: " . $e->getMessage());
64 $this->brackets = self::$BRACKETS_LIST[
$type];
66 $this->brackets = self::$BRACKETS_LIST[
$this->type];
◆ addQueries()
ilSCORM13DB::addQueries |
( |
| ) |
|
Definition at line 82 of file ilSCORM13DB.php.
84 require_once(
"./Modules/Scorm2004/classes/ilSCORM13Player_mysql.php");
◆ begin()
◆ commit()
Definition at line 364 of file ilSCORM13DB.php.
367 ? self::getDB()->rollBack()
368 : self::getDB()->commit();
369 return self::$ERRORS;
◆ escapeName()
ilSCORM13DB::escapeName |
( |
|
$name | ) |
|
|
private |
Definition at line 116 of file ilSCORM13DB.php.
121 return $b[0] . preg_replace(
'/[^\w_.-]/',
'_', $name) . $b[1];
◆ exec()
ilSCORM13DB::exec |
( |
|
$queries, |
|
|
|
$params = null , |
|
|
& |
$result = null |
|
) |
| |
exec('delete...') exec('delete...
id=?', array(231)) exec('insert... id=?', array(array(231), array(130))) exec(array('select... id=?', 'select2... id=?'), array(array(231))) exec(array('select... id=?', 'select2... id=?'), array(array(231), array(130)))
erstelle gleich dimensionale arrays f�r $queries und $params
Definition at line 304 of file ilSCORM13DB.php.
References $d, $r, and $result.
306 if (!is_array($queries))
308 $r = self::exec(array($queries), $params);
311 if (!is_array($params))
315 if (!is_array(current($params)))
317 $params = array($params);
322 foreach ($queries as $i => &$q)
324 if ($s =
$d->prepare($sql = (self::$SQLCOMMAND[$q] ? self::$SQLCOMMAND[$q] : $q)))
326 error_log(
"SQL-Command: ".self::$SQLCOMMAND[$q]);
329 $ps = is_array($params) ? $params[$i % count($params)] : null;
330 if (!is_array(current($ps)))
337 $arr = $s->errorInfo();
338 file_put_contents(
'/tmp/sql.log', implode(
"\n", array(
'', date(
'c'), $sql, var_export($p,
true),var_export($arr,
true))), FILE_APPEND);
343 ?
$result = $s->fetchAll(PDO::FETCH_ASSOC)
344 :
$result[] = $s->fetchAll(PDO::FETCH_ASSOC);
◆ getDB()
◆ getDSN()
◆ getLastId()
ilSCORM13DB::getLastId |
( |
| ) |
|
Definition at line 87 of file ilSCORM13DB.php.
89 return self::getDB()->lastInsertId();
◆ getRecord()
& ilSCORM13DB::getRecord |
( |
|
$tableOrView, |
|
|
|
$idname, |
|
|
|
$idvalue |
|
) |
| |
Definition at line 131 of file ilSCORM13DB.php.
References $r.
133 if (!is_string($idname) || !is_numeric($idvalue))
137 $q =
'SELECT * FROM ' . self::escapeName($tableOrView) .
' WHERE ' . self::escapeName($idname) .
'=' . $idvalue;
138 $r = self::query($q);
◆ getRecords()
& ilSCORM13DB::getRecords |
( |
|
$tableOrView, |
|
|
|
$idname = null , |
|
|
|
$idvalues = null , |
|
|
|
$order = null , |
|
|
|
$paging = null |
|
) |
| |
Definition at line 148 of file ilSCORM13DB.php.
150 $tableOrView = self::escapeName($tableOrView);
151 $q =
"SELECT * FROM $tableOrView";
152 if (is_string($idname) && is_array($idvalues))
154 $idname = self::escapeName($idname);
155 foreach ($idvalues as &$idvalue)
157 if (!is_numeric($idvalue))
return false;
158 $idvalue =
"$idname=$idvalue";
160 $q .=
' ' . implode(
' OR ', $idvalues);
162 return self::query($q, null, $order, $paging);
◆ getType()
◆ il_to_pdo_dsn()
ilSCORM13DB::il_to_pdo_dsn |
( |
|
$il_dsn | ) |
|
Definition at line 378 of file ilSCORM13DB.php.
380 $pattern =
'/([a-z]+)(:\/\/)([^:]*)(:)([^@]*)(@)([^\/]+)(\/)(.*)/i';
381 preg_match($pattern, $il_dsn, $matches);
382 $pdo_dsn[0]=$matches[1].
":dbname=".$matches[9].
";host=".$matches[7];
383 $pdo_dsn[1]=$matches[3];
384 $pdo_dsn[2]=$matches[5];
◆ init()
ilSCORM13DB::init |
( |
|
$dsn, |
|
|
|
$login, |
|
|
|
$password, |
|
|
|
$type = 'mysql' |
|
) |
| |
Definition at line 70 of file ilSCORM13DB.php.
References $dsn, and $type.
73 self::$DB =
new PDO(
$dsn, $login, $password);
74 }
catch (PDOException $e) {
75 error_log(
"Error!: " . $e->getMessage());
79 self::$BRACKETS = self::$BRACKETS_LIST[self::$TYPE];
◆ query()
& ilSCORM13DB::query |
( |
|
$query, |
|
|
|
$params = null , |
|
|
|
$order = null , |
|
|
|
$paging = null , |
|
|
|
$fetchType = PDO::FETCH_ASSOC |
|
) |
| |
Definition at line 258 of file ilSCORM13DB.php.
References $d, $query, and $r.
264 if (is_array($order))
267 foreach ($order as $k => $v)
269 $o[] = self::escapeName($k) .
' ' . ($v ?
'ASC' :
'DESC');
271 $q[] =
'ORDER BY ' . implode(
', ', $o);
273 if (is_array($paging))
275 if (is_int($o = $paging[
'count']))
279 if (is_int($o = $paging[
'offset']))
285 $q = implode(
' ', $q);
286 $s =
$d->prepare($q);
287 $s->execute($params);
288 $arr = $s->errorInfo();
289 file_put_contents(
'/tmp/sql.log', implode(
"\n", array(
'', date(
'c'), $q, var_export($params,
true),var_export($arr,
true))), FILE_APPEND);
290 $r = $s->fetchAll($fetchType);
◆ removeRecord()
ilSCORM13DB::removeRecord |
( |
|
$table, |
|
|
|
$idname, |
|
|
|
$idvalue |
|
) |
| |
Definition at line 220 of file ilSCORM13DB.php.
222 self::removeRecords($table, $idname, array($idvalue));
◆ removeRecords()
ilSCORM13DB::removeRecords |
( |
|
$tables, |
|
|
|
$idnames, |
|
|
|
$idvalues |
|
) |
| |
Definition at line 225 of file ilSCORM13DB.php.
References $d.
227 if (!is_array($idvalues))
233 if (!is_array($tables))
235 $tables = array($tables);
237 if (!is_array($idnames))
239 $idnames = array($idnames);
241 $tables = array_reverse($tables);
242 foreach ($tables as $i => &$table)
244 $table = self::escapeName($table);
245 $idname = $idnames[$i % count($idnames)];
246 if (!is_string($idname))
return false;
247 $idname = self::escapeName($idname);
248 $q =
"DELETE FROM $table WHERE $idname=?";
249 foreach ($idvalues as $idvalue)
251 $table = self::exec($q, $idvalue);
255 return array_reverse($tables);
◆ rollback()
ilSCORM13DB::rollback |
( |
| ) |
|
◆ setLastId()
ilSCORM13DB::setLastId |
( |
|
$id | ) |
|
|
private |
Definition at line 124 of file ilSCORM13DB.php.
127 ? $this->lastId = $id
128 : self::$LAST_ID = $id;
◆ setRecord()
ilSCORM13DB::setRecord |
( |
|
$tableOrView, |
|
|
|
$row, |
|
|
|
$idname = null |
|
) |
| |
◆ setRecords()
ilSCORM13DB::setRecords |
( |
|
$tableOrView, |
|
|
|
$rows, |
|
|
|
$idname = null |
|
) |
| |
Definition at line 165 of file ilSCORM13DB.php.
References $d, $r, $row, and $type.
170 if (!is_array(
$row = $rows[0]))
174 $tableOrView = self::escapeName($tableOrView);
176 if (is_string($idname)) {
177 $idvalue =
$row[$idname];
178 $idname = self::escapeName($idname);
180 $u = is_numeric($idvalue);
183 foreach (array_keys(
$row) as $k)
185 $q[] = self::escapeName($k) .
'=?';
187 $q = implode(
', ', $q);
188 $q =
"UPDATE $tableOrView SET $q WHERE $idname=$idvalue";
192 foreach (array_keys(
$row) as $k)
194 $q[] = self::escapeName($k);
196 $q = implode(
', ', $q);
197 $q =
"INSERT INTO $tableOrView ($q) VALUES (" . str_pad(
'', count(
$row)*2-1,
'?,') .
')';
200 if ($s =
$d->prepare($q))
202 $type = self::getType();
203 foreach ($rows as &
$row)
205 $row = $s->execute(array_values($row));
206 $arr = $s->errorInfo();
207 file_put_contents(
'/tmp/sql.log', implode(
"\n", array(
'', date(
'c'), $sql, var_export($q,
true),var_export($arr,
true))), FILE_APPEND);
209 if (!$u && is_string($idname) && $row)
211 $row =
$d->lastInsertId();
212 self::setLastId($row);
◆ $BRACKETS
◆ $brackets
◆ $BRACKETS_LIST
ilSCORM13DB::$BRACKETS_LIST |
|
staticprivate |
Initial value:= array(
'mysql' => '``',
'sqlite' => '""',
)
Definition at line 40 of file ilSCORM13DB.php.
◆ $DB
◆ $db
◆ $DSN
◆ $dsn
◆ $ERRORS
◆ $errors
◆ $LAST_ID
◆ $lastId
◆ $SQLCOMMAND
ilSCORM13DB::$SQLCOMMAND = array() |
|
staticprivate |
◆ $TYPE
◆ $type
The documentation for this class was generated from the following file: