Re: MySQL error reporting



Thanks!

Jerry Stuckle wrote:
Paul Furman wrote:

Paul Furman wrote:

Jerry Stuckle wrote:

Paul Furman wrote:

Jerry Stuckle wrote:

Paul Furman wrote:

How do I turn off MySQL error reporting? I set error_reporting(0); but that doesn't seem to be working.


That turns off PHP error reporting.

What problem are you having?


Sorry for the slow reply. Any SQL error appears on the screen, and sometimes that includes info I don't want included. Hmm, now that I think of it that may be a built in error reporting system (I didn't write all of this system). In any case is this a risk and is there a way of turning it off? The worst case I recall was something like:

ERROR: unable to connect to the sever using user 'admin' and password 'mysectretpassword'

Ha ha, I made that up as I don't recall that one but I don't want anything like that to happen again!


Preface the mysql_connect() call with an '@' character, i.e.

@mysql_connect(....);

This suppresses any error message for this function. Just be sure to check the response.


Excellent, thank you!!!


Hmm, well I thought that was working but maybe just on the live server not my home test version. Anyways I have a related question. Now I do want to show at least part of the error, to prevent duplicate login names, I set the 'unique' key on that field and tested, the test came back like this *first section in red I'd like to show* the next part I'd rather not:

--
*ERROR: Duplicate entry 'paul' for key 2* - INSERT INTO customer VALUES (0, 'paul','paul', '', 'paul', 'p', '', '', '', 'CA', '', '', '2007-04-24', 'no', '0', 'n', 'n', 'n' )

Thank you! Your registration has been completed!
--

And of course I'd want at a minimum to be able to note the error & suppress my "thank you" message afterwards. That bit of code is simply:

query($query);
print "<p>Thank you! Your registration has been completed!</p>\n";

more like this:

query($query);
if (!$error){
print "<p>Thank you! Your registration has been completed!</p>\n";
}

Thanks for any ideas!

Paul




Paul,

Not as easy - and a little bit user unfriendly, also.

Rather - check the result of the @mysql_query() insert. If it is false, call mysql_errno() to get the error number.

Error code 1062 is a duplicate entry error. If you get that, the userid already exists. If you get something else, you have a different problem.




--
Paul Furman Photography
http://www.edgehill.net/1
Bay Natives Nursery
http://www.baynatives.com
.



Relevant Pages

  • Re: MySQL error reporting
    ... This suppresses any error message for this function. ... well I thought that was working but maybe just on the live server not my home test version. ... Error code 1062 is a duplicate entry error. ...
    (comp.lang.php)
  • Re: Return value(s) from functions - any defacto standard?
    ... thread-local storage, which is what you need to use for a "last error" ... Of course, in the PC world, reserving space for error reporting is ... you can return bool and have an error code ... From your comment it seems that in C++, where exceptions are part of the ...
    (microsoft.public.vc.mfc)
  • Re: Computer Restarts While I Am Using It.
    ... I saw the 2nd Error Code when my computer crashed and showed the blue ... then to the advanced tab and then error reporting button. ... you should get a detailed message about the error causing the failure. ... For the past 2 months my computer has been restarting itself while I am ...
    (microsoft.public.windowsxp.help_and_support)
  • Re: What are the error handling method in C?
    ... You're not talking about error handling, you're talking about error reporting. ... The error code reports the error; the calling routine decides how to handle it. ... Writing an error code to a location pointed at by a pointer passed in as an argument. ...
    (comp.lang.c.moderated)