new db() - Object
$string db = null |
Datenbankname |
$string table = null |
Tabelle der Datenbank |
$string dbTable = null |
vollständiger Datenbank.Tabellen-ID |
$object mySqli = null |
MySqli Objekt |
$mixed lastResult = null |
gibt das letzte Ergebnis von zurück |
$string charset = null |
Charset der Datenbank |
$string collation = null |
Collation der Datenbank |
$array specification = null |
Datenbank Spezifikation |
$bool connected = false |
gibt mit true oder false an ob die Datenbank verbunden ist |
__construct ([$string $object $dbTable = null[, $string $tableId = null]])
$dbTable |
optional; gibt den Datenbank-ID und optional den Tabellennamen an definiert die Tabelle browser der Standarddatenbank; bei null, wird die Standarddatenbank ausgegeben; oder ein neues new db () Object |
$tableId |
optional; gibt die ID an, die in der XML-Datei als table id gespeichert ist |
verbindet sich mit dem Server der Datenbank und der Datenbank selber oder erstellt eine neue Datenbank wenn sie nicht existiert. Unter gewissen Voraussetzungen wird auch die Tabelle erstellt, wenn sie nicht existiert
$db = new db ('xenec.browser' ) ;
__destruct ()
schließt die Datenbank und gibt true bei Erfolg zurück; ansonsten false
__get ($string $name)
$name |
Name der Variable |
gibt die Eigenschaften des Datenbank Objekts zurück
$db = new db ('xenec.browser' ) ;
echo $db->table ;
__set ($string $name, $mixed $value)
$name |
Name der Variable |
$value |
Variable die gespeichert werden soll |
speichert die Eigenschaften des Datenbank Objekts
$db = new db ('xenec.browser' ) ;
$db->table = 'browser' ;
__debugInfo ()
gibt alle Eigenschaften des Datenbank Objekts zurück
$db = new db ('xenec.browser' ) ;
print_r ($db) ;
query ($string $sqlQuery = null)
$sqlQuery |
SQL Befehl, |
gibt bei Erfolg true, false oder $assoc_array mit Werten zurück; im Fehlerfall wird null zurückgegeben
$db = new db ('xenec.browser' ) ;
$db->query ("SELECT * FROM tabelle WHERE spalte='beispiel'" ) ;
$db->query ("SELECT * FROM $db->table WHERE spalte='beispiel'" ) ;
$db->query ("SELECT user_agent, count FROM user_agent WHERE crawler='1' ORDER BY count ASC" ) ;
real_escape_string ($string $numeric $value = null)
$value |
Zeichenkette oder Zahl, die maskiert werden soll |
Maskiert Sonderzeichen in einer Zeichenkette zur Verwendung in einer SQL-Anweisung, wobei der aktuelle Zeichensatz der Verbindung berücksichtigt wird, siehe https://www.php.net/manual/de/mysqli.real-escape-string.php; im Fehlerfall wird null zurückgegeben
$db = new db ('xenec.browser' ) ;
$db->real_escape_string ("' AND (SELECT SLEEP(5)) --" ) ;
$db->real_escape_string ("admin' --" ) ;
isValid ()
gibt true zurück, wenn die Verbindung zur Datenbank aufgebaut und das MySQLi-Objekt gültig ist; ansonsten false
$db = new db ('xenec.browser' ) ;
$db->isValid() ;
Tabellen
createTable ($string $tableId = null)
$tableId |
gibt die ID an, die in der XML-Datei als table id gespeichert ist |
gibt true zurück wenn die Tabelle erfolgreich erstellt und gespeichert wurde; ansonsten false
$db = new db ('xenec.browser' ) ;
$db->createTable('browser' ) ; // erstellt die Tabelle 'browser' in der Datenbank 'fachkunde' mit der Tabellen ID 'browser'
deleteTable ()
löscht die angegebene Tabelle wenn sie existiert; bei Erfolg wird true zurückgegeben; ansonsten false
$db = new db ('xenec.browser' ) ;
$db->deleteTable() ; // löscht die Tabelle 'browser' in der Datenbank 'xenec'
clearTable ()
leert die angegebene Tabelle wenn sie existieren; bei Erfolg wird true zurückgegeben; ansonsten false
$db = new db ('xenec.browser' ) ;
$db->clearTable() ; // leert die Tabelle 'browser' in der Datenbank 'xenec'
getTableColumn ([$bool $extended = false])
$extended |
optional; gibt bei true Zusatzinformationen über die Spalten der Tabelle zurück |
gibt bei Erfolg ein array mit den Spaltennamen zurück (bei
$extended = true ein detailliertes assoziatives Array mit Spaltendefinitionen wie Field, Type, Null, Key, Default, Extra); im Fehlerfall null
$db = new db ('xenec.browser' ) ;
$col = $db->getTableColumn() ; // gibt ein Array zurück mit allen Spaltennamen der Tabelle 'browser' in der Datenbank 'xenec'
getTable ([$array $string $select = null])
$select |
optional; gibt die Spalte oder Spalten als array oder string an, die ausgegeben werden sollen |
gibt ein array zurück mit allen Inhalten der Tabelle, führt den SQL Befehl
SELECT $select FROM $this->table aus; im Fehlerfall wird null zurückgegeben
$db = new db ('xenec.browser' ) ;
$db->getTable ('userAgent' ) ;
Zeilen / Rows
createRow ($array $values = null)
$values |
gibt die Werte als array an, die gespeichert werden sollen |
gibt true zurück wenn die Zeile erstellt wurde, führt den SQL Befehl
INSERT INTO $this->table (implode(array_keys($values)) ) VALUES (implode(array_values($values)) ) aus; ansonsten wird false zurückgegeben
$db = new db ('xenec.browser' ) ;
$db->createRow (['id' => 's20987f23' , 'userAgent' => 'Chrome' ] ) ;
updateRow ($array $values = null, $array $string $where = null)
$values |
gibt die Werte als array an, die gespeichert werden sollen |
$where |
gibt 'WHERE' als array oder string an, wo die Zeile verändert werden soll oder mehrere mit 'AND' getrennt |
gibt true zurück wenn die Zeile aktualisiert wurde, führt den SQL Befehl
UPDATE $this->table SET implode($values) WHERE implode($where) aus; ansonsten wird false zurückgegeben
$db = new db ('xenec.browser' ) ;
// UPDATE browser SET `id`="s20987f23", `userAgent`="Chrome 4.0" WHERE `userAgent`="Chrome"
$db->updateRow (['id' => 's20987f23' , 'userAgent' => 'Chrome 4.0' ] , ['userAgent' => 'Chrome' ] ) ;
// UPDATE browser SET `id`="s20987f23", `userAgent`="Chrome 4.0" WHERE `userAgent`="Chrome" AND `browser`="Firefox"
$db->updateRow (['id' => 's20987f23' , 'userAgent' => 'Chrome 4.0' ] , ['userAgent' => 'Chrome' , 'browser' => 'Firefox' ] ) ;
deleteRow ($array $string $where = null)
$where |
gibt 'WHERE' als array oder string an, wo die Zeile verändert werden soll oder mehrere mit 'AND' getrennt |
gibt true zurück wenn die Zeile gelöscht wurde, führt den SQL Befehl
DELETE FROM $this->table WHERE implode($where) aus; ansonsten wird false zurückgegeben
$db = new db ('xenec.browser' ) ;
// DELETE FROM browser WHERE `userAgent`="Chrome"
$db->deleteRow (['userAgent' => 'Chrome' ] ) ;
// DELETE FROM browser WHERE `userAgent`="Chrome" AND `browser`="Firefox"
$db->deleteRow (['userAgent' => 'Chrome' , 'browser' => 'Firefox' ] ) ;
getRow ($array $string $select = null, $array $string $where = null)
$select |
optional; gibt die Spalte oder Spalten als array oder string an, die ausgegeben werden sollen |
$where |
gibt 'WHERE' als array oder string an, wo die Zeile selektiert werden soll oder mehrere mit 'AND' getrennt |
gibt ein array zurück mit allen Inhalten der gefundenen Zeile, führt den SQL Befehl
SELECT $select FROM $this->table WHERE implode($where) aus; im Fehlerfall wird null zurückgegeben
$db = new db ('xenec.browser' ) ;
// SELECT * FROM browser WHERE `userAgent`="Chrome"
$db->getRow ('*' , ['userAgent' => 'Chrome' ] ) ;
// SELECT * FROM browser WHERE `userAgent`="Chrome" AND `browser`="Firefox"
$db->getRow ('*' , ['userAgent' => 'Chrome' , 'browser' => 'Firefox' ] ) ;
Spalten / Column
createCol ($string $column = null[, $string $setup = null[, $string $after = null]])
$column |
übergibt den Spaltenname der erstellt werden soll |
$setup |
optional; übergibt die Einstellungen für die Spalte |
$after |
optional; übergibt den Spaltenname, nach der die Spalte angehangen wird |
gibt true zurück, wenn die Spalte erfolgreich erstellt wurde; ansonsten false
$db = new db ('xenec.browser' ) ;
$db->createCol ('userAgent' ) ;
$db->createCol ('BrowserName' , 'TEXT NOT NULL' , 'userAgent' ) ;
deleteCol ($string $column = null)
$column |
übergibt den Spaltenname der gelöscht werden soll |
gibt true zurück, wenn die Spalte erfolgreich gelöscht wurde; ansonsten false
$db = new db ('xenec.browser' ) ;
$db->deleteCol ('userAgent' ) ;
columnExists ($string $column = null[, $bool $case_sensitive = false])
$column |
übergibt den Spaltenname der geprüft werden soll |
$case_sensitive |
optional; mit true wird Groß- und Kleinschreibung beachtet |
gibt true zurück, wenn die Spalte existiert; ansonsten false
$db = new db ('xenec.browser' ) ;
$db->columnExists ('userAgent' ) ;