You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Since PHP 8.4 in Windows the PDOException has wrong infos.
If PHP connects to a firebird server with an invalid password the call PDOException->getCode() returns 0.
In PHP 8.3.15 getCode() returns 335544472.
I dont know if linux is also affected or if this only happens in windows.
Other PDO is not affected. I checked PDO_Mysql. Code and message is OK.
The following code shows the problem.
<?php// OS: Windows 11 (24H2)// Firebird Server 4.0.5// fbclient.dll (5.0.1 64bit) - Client Library Version => WI-V6.3.1.1469 Firebird 5.0functiontestPdoException($dsn, $username, $password) {
try {
$pdo = newPDO($dsn, $username, $password);
} catch (PDOException$e) {
echo'PDOException code: ' . $e->getCode() . PHP_EOL;
echo'PDOException message: ' . $e->getMessage() . PHP_EOL;
}
}
// connect to firebird server with invalid passwordtestPdoException("firebird:dbname=localhost:database", "user", "invalidPassword");
// connect to unknown hosttestPdoException("firebird:dbname=unknownHost:database", "user", "password");
Resulted in this output in PHP 8.4.2:
// connect to firebird server with invalid password
PDOException code: 0
PDOException message: SQLSTATE[08003] [0] invalid database handle (no active connection)
// connect to unknown host
PDOException code: 0
PDOException message: SQLSTATE[08003] [0] invalid database handle (no active connection)
But I expected this output instead like in PHP 8.3.15:
// connect to firebird server with invalid password
PDOException code: 335544472
PDOException message: SQLSTATE[HY000] [335544472] Your user name and password are not defined. Ask your database administrator to set up a Firebird login.
// connect to unknown host
PDOException code: 335544721
PDOException message: SQLSTATE[HY000] [335544721] Unable to complete network request to host "unknownHost".
PHP Version
PHP 8.4.2
Operating System
Windows 11 (24H2)
The text was updated successfully, but these errors were encountered:
Description
Since PHP 8.4 in Windows the PDOException has wrong infos.
If PHP connects to a firebird server with an invalid password the call PDOException->getCode() returns 0.
In PHP 8.3.15 getCode() returns 335544472.
I dont know if linux is also affected or if this only happens in windows.
Other PDO is not affected. I checked PDO_Mysql. Code and message is OK.
The following code shows the problem.
Resulted in this output in PHP 8.4.2:
But I expected this output instead like in PHP 8.3.15:
PHP Version
PHP 8.4.2
Operating System
Windows 11 (24H2)
The text was updated successfully, but these errors were encountered: