Die von Cmsms verwendete Adodb Lib ist uralt , nicht gewartet und man kann damit einige Dinge nicht machen, die man mit Mysqli - Zugriff machen könnte.
Mit folgendem PHP Code geht alles.
$db = cmsms()->GetDb();
$dbid = $db->connectionId;
unset($db);
$r=mysqli_query ($dbid , 'select * from cms_content;');
print_r($r);
Mit GetDb holt man sich das Adodb Objekt.
Mit $dbid = $db->connectionId; holt man sich die Verbindungsid/link zu Mysqli.
Das Objekt $db wird nicht mehr benötigt also weg damit mit unset($db);
Und nun kann man alle Mysqli Statements ausführen die es so gibt.
Beispiel:
$r=mysqli_query ($dbid , 'select * from cms_content;');
print_r($r);
$r enthält dann das Resultsetobjekt der Abfrage.
Aber warum sollte man es machen ?
Adodb auch in der light Version enthält allerhand Zeugs das man eigentlich für die meisten Dinge nicht benötigt.
Und es verwendet ja selbst Mysqli.
Also gewinnt man RAM und vor allem Speed bei der Abfrage wenn man diese Dinge direkt erledigt.
$dbi ist ein Mysqli Objekt mit folgendem Beispielinhalt:
AntwortenLöschenmysqli Object
(
[affected_rows] => 1
[client_info] => mysqlnd 5.0.12-dev - 20150407 - $Id: f59eb767fe17a6679589b5c076d9fa88d3d4eac0 $
[client_version] => 50012
[connect_errno] => 0
[connect_error] =>
[errno] => 0
[error] =>
[error_list] => Array
(
)
[field_count] => 12
[host_info] => Localhost via UNIX socket
[info] =>
[insert_id] => 0
[server_info] => 5.5.5-10.1.11-MariaDB-1~wily-log
[server_version] => 50505
[stat] => Uptime: 73 Threads: 1 Questions: 331 Slow queries: 0 Opens: 102 Flush tables: 1 Open tables: 113 Queries per second avg: 4.534
[sqlstate] => 00000
[protocol_version] => 10
[thread_id] => 8
[warning_count] => 0
)
Hier eingesetzt unter MariaDB Galera Cluster 10.0 Series