summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMark Newnham <mark@newnhams.com>2026-01-19 18:41:09 -0700
committerGitHub <noreply@github.com>2026-01-19 18:41:09 -0700
commitffdce207b10c6be90fb4093338dd7c4338e735bf (patch)
tree3b112e1c25d96de4a46654287076102466282c32
parent19d14009f7ac32dcd15b59e92afda748e0c4665d (diff)
parent1738d53e71ba5d29296e738063532f627e7b8837 (diff)
downloadadodb-ffdce207b10c6be90fb4093338dd7c4338e735bf.tar.gz
adodb-ffdce207b10c6be90fb4093338dd7c4338e735bf.tar.bz2
adodb-ffdce207b10c6be90fb4093338dd7c4338e735bf.zip
Merge pull request #1157 from ADOdb/1156-mysqli-metaforeignkeys-fails-with-warning-if-an-invalid-table-name-or-table-owner-is-supplied
Resructure method to prevent array errors if table not found
-rw-r--r--drivers/adodb-mysqli.inc.php16
1 files changed, 12 insertions, 4 deletions
diff --git a/drivers/adodb-mysqli.inc.php b/drivers/adodb-mysqli.inc.php
index 71fb346b..36a3f207 100644
--- a/drivers/adodb-mysqli.inc.php
+++ b/drivers/adodb-mysqli.inc.php
@@ -947,12 +947,20 @@ class ADODB_mysqli extends ADOConnection {
$table = "$owner.$table";
}
- $a_create_table = array_change_key_case(
- $this->getRow(
- sprintf('SHOW CREATE TABLE `%s`', $table)),
- CASE_UPPER
+ $showCreate = $this->getRow(
+ sprintf('SHOW CREATE TABLE `%s`', $table)
);
+ if ( !$showCreate || !is_array($showCreate) ) {
+ /*
+ * Invalid table or owner provided
+ */
+ $this->setFetchMode($savem);
+ return false;
+ }
+
+ $a_create_table = array_change_key_case($showCreate, CASE_UPPER);
+
$this->setFetchMode($savem);
$create_sql = $a_create_table["CREATE TABLE"] ?? $a_create_table["CREATE VIEW"];