Re: 1 cset was pushed to core/sqlite: - replacing a & with @ to suppress the e...

"Jason Judge" <[email protected]>
Newsgroups gmane.comp.cms.xaraya.bk-notices
Organization Xaraya
Message-ID <[email protected]>
"Marcel van der Boom" <[email protected]> wrote in message
news:[email protected]...
> Agreed, that was the case initially. However, that makes things
> unnecessary hard. The error hiding is only warranted when a statement
> is made deliberately to fail and check for the outcome and react to
> that. In all other cases it just hides the error.
> That has been a bug for a long time and it took me a while to sort out
> why xar_pages didnt install, because you just go looking in the wrong
> direction, because the error displayed is merely a consequence of the
> real error.
>
> I made a note in the code to the extent of: "We dont wanna do this
> here, but at the driver level, but we cant right now"

I may not have been clear: the ADOdb drivers should not throw PHP errors or
warnings, no matter what SQL is thrown at them, so there is no need to use
'@' to suppress errors in the Execute() method. The drivers themselves
should be catching those errors and making them available to ADOdb though
the ErrorMsg() method.

When the driver _query() method is called, it is already called up with an
'@' to suppress its PHP errors.

I think the problem is that the sqlite driver over-rides the Execute()
method, which none of the other drivers do, and it doesn't carry forward the
PHP error suppression that the standard Execute() method does.

-- JJ
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.