...

View Full Version : Mysql Error Messages



PureMisery
09-23-2006, 11:32 PM
Is there a way to change the way a mysql error message is displayed?
Example:
A current mysql error msg:

Warning: mysql_connect(): Can't create a new thread (errno 11).
If you are not out of available memory, you can consult the manual for a possible OS-dependent bug in
hsphere/local/home/ACCOUNT_NAME/MYRANDOMSITE.com/path/to/file.php on line 4

Is there a way to hide the section that displays my account name?

Fumigator
09-24-2006, 02:08 AM
Using PHP? Then just use the str_replace() function on mysql_error().



echo str_replace('hsphere/local/home/ACCOUNT_NAME/MYRANDOMSITE.com', '', mysql_error());

PureMisery
09-24-2006, 03:15 AM
Using PHP? Then just use the str_replace() function on mysql_error().



echo str_replace('hsphere/local/home/ACCOUNT_NAME/MYRANDOMSITE.com', '', mysql_error());


I tried this but it didn't work.


$connect = mysql_connect($dbhost, $dbuname, $dbpass)
or die("Unable to connect to MySql Server");
$dbselect = mysql_select_db($dbname,$connect)
or die("Could not select table");
echo str_replace('/hsphere/local/home/ACCOUNT_NAME/', '', mysql_error($connect));
And yes, I did change ACCOUNT_NAME :cool:

Fumigator
09-24-2006, 06:21 AM
What does "it didn't work" mean? Did your computer implode? Did the jerbil inside die? Did the internet crash?

The code you posted won't ever get to your echo statement if there is a connection error due to your "or die()" code, so I reckon mysql_error() isn't going to return much if the connection works, so I'm not sure what you're going for there.

PureMisery
09-24-2006, 06:58 AM
What does "it didn't work" mean? Did your computer implode? Did the jerbil inside die? Did the internet crash?

The code you posted won't ever get to your echo statement if there is a connection error due to your "or die()" code, so I reckon mysql_error() isn't going to return much if the connection works, so I'm not sure what you're going for there.

When I say it doesn't work, I mean that there was no change in the displayed error message. I tried it with and without the "or die()" code.

Fumigator
09-24-2006, 07:57 AM
My first response was off the cuff; now I've thought about it. The function mysql_connect() will display a warning if it fails, which you can completely suppress using the "@" sign just before the function name.


$connect = @mysql_connect($dbhost, $dbuname, $dbpass);


You can leave it like that if you don't need anything at all displayed, or you can now put the str_replace thing in to modify the error message. You may find that mysql_error() itself doesn't show the relative path to the file, which is what you were originally concerned with. (It will display username which you probably don't want either)



EZ Archive Ads Plugin for vBulletin Copyright 2006 Computer Help Forum