Using IBM DB2 V7.1 and MS SQL Server 7 ODBC database connections.
Print the result of odbc_error() or odbc_errormsg() after each call to an odbc_ function that gives no error and, sooner or later, you'll get garbage instead of a blank string!
(PHP 4 >= 4.0.5, PHP 5, PHP 7, PHP 8)
odbc_error — Restituisce l'ultimo codice di errore
Restituisce un codice di 6 cifre che indica lo stato di ODBC, o una stringa vuota se non ci sono stati errori.
connection_id
L'identificativo di connessione ODBC, vedere odbc_connect() per ulteriori dettagli.
Se connection_id
รจ specificato, viene restituito
l'ultimo stato di quella connessione, altrimenti viene restituito l'ultimo stato
di qualsiasi connessione.
Questa funzione restituisce un valore sensato solo se l'ultima query odbc fallisce
(ad esempio odbc_exec() restituisce false
).
Using IBM DB2 V7.1 and MS SQL Server 7 ODBC database connections.
Print the result of odbc_error() or odbc_errormsg() after each call to an odbc_ function that gives no error and, sooner or later, you'll get garbage instead of a blank string!
On persistent connections, a failed T-SQL will allow odbc_error and odbc_errormsg to return the error, but a subsequent successful T-SQL will not clear the error. Is it a bug?
If you use an argument, make sure its the CONNECTION_ID and not the RESULT_ID.
Testing the result can return a null string or sometimes a garbage string.
# -- Example code --
$rs = odbc_exec($dbc, $sql);
#this is wrong but won't error out until
#you demo the page for a client!
if (odbc_error($rs)) die(...);
#these work
if (odbc_error()) die(...);
if (odbc_error($dbc)) die(...);
I have use this function, its very simple and cute.
with IBM DB2
<?php
// you must set the connection first
if (odbc_error())
{
echo odbc_errormsg($conn);
}
// if you want to show the perfect error message
// then format it using string functions.
?>
Have a good day!