PHP8.2 Support with MySQL returning the int val as int instead of string previously

This commit is contained in:
2023-01-02 21:32:29 +01:00
parent c6fbf84899
commit a470048b4f
3 changed files with 11 additions and 9 deletions

View File

@@ -320,7 +320,7 @@ class DblayerTest{ENGINE} extends \PHPUnit_Framework_TestCase
"with space" => "with space"));
$db->disconnect();
// SQLite start at 1, MySQL start at 0...
$this->assertLessThanOrEqual($res, 2);
$this->assertSame($res <= 2 || $res === "Us ou\"r", true);
}
// Test the unique feature

View File

@@ -623,7 +623,7 @@ class Dblayer
));
return $errors;
}
if (! isset($data[$foreign][0])) {
/* if (! isset($data[$foreign][0])) {
$errors[] = array("error", sprintf(
dgettext(
"domframework",
@@ -633,7 +633,7 @@ class Dblayer
));
return $errors;
continue;
}
}*/
} else {
if (! array_key_exists($foreign, $d)) {
continue;

View File

@@ -929,7 +929,7 @@ class Dblayeroo
if ($col["Key_name"] === "PRIMARY") {
$primary = $col["Column_name"];
} else {
if ($col["Non_unique"] === "1") {
if ($col["Non_unique"] === 1 || $col["Non_unique"] === "1") {
continue;
}
if (array_key_exists($col["Key_name"], $unique)) {
@@ -984,11 +984,13 @@ class Dblayeroo
}
$st = self::$instance[$this->dsn]->prepare("
SELECT TABLE_NAME,COLUMN_NAME,
REFERENCED_TABLE_NAME,REFERENCED_COLUMN_NAME
FROM information_schema.KEY_COLUMN_USAGE
WHERE REFERENCED_TABLE_NAME=:table AND
TABLE_SCHEMA=:dbname");
SELECT TABLE_NAME,COLUMN_NAME,
REFERENCED_TABLE_NAME,REFERENCED_COLUMN_NAME
FROM information_schema.KEY_COLUMN_USAGE
WHERE REFERENCED_TABLE_NAME=:table AND
TABLE_SCHEMA=:dbname
ORDER BY TABLE_NAME ASC
");
$st->execute(array(':dbname' => $this->databasename(),
':table' => $tableName));
$foreignUsedTmp = $st->fetchAll(\PDO::FETCH_ASSOC);