Connecting Tech Pros Worldwide Forums | Help | Site Map

Errors in php/mySQL

knoak
Guest
 
Posts: n/a
#1: Jul 17 '05
Hi there,

I wonder if there is any command to hide
php and mySQL errors from the user, and replace
them with a customized message, en maybe even
send a mail with the error to a defined email adress..

Greetings and thanks in advance

Pedro Graca
Guest
 
Posts: n/a
#2: Jul 17 '05

re: Errors in php/mySQL


knoak wrote:[color=blue]
> I wonder if there is any command to hide
> php and mySQL errors from the user, and replace
> them with a customized message, en maybe even
> send a mail with the error to a defined email adress..[/color]

http://www.php.net/manual/en/ref.errorfunc.php

--
Mail to my "From:" address is readable by all at http://www.dodgeit.com/
== ** ## !! ------------------------------------------------ !! ## ** ==
TEXT-ONLY mail to the whole "Reply-To:" address ("My Name" <my@address>)
may bypass my spam filter. If it does, I may reply from another address!
jOrdi3.tar.gz@gmail.com
Guest
 
Posts: n/a
#3: Jul 17 '05

re: Errors in php/mySQL


You can do this several ways.

1. You can turn error reporting off by putting this at the top of the
script

error_reporting(0);

2. You can create an error handler like so

$connection = mysql_connect($host,$username,$password) or die("Could
not connect to MySqld. Can't continue!");

On scripts I create I add a function called report_error(); It accepts
one argument and that is the error message to be displayed. If an error
is to occur then an email is sent to me and an error message is shown
to the user.

jblanch
Guest
 
Posts: n/a
#4: Jul 17 '05

re: Errors in php/mySQL



jOrdi3.tar.gz@gmail.com wrote:[color=blue]
> You can do this several ways.
>
> 1. You can turn error reporting off by putting this at the top of the
> script
>
> error_reporting(0);
>
> 2. You can create an error handler like so
>
> $connection = mysql_connect($host,$username,$password) or die("Could
> not connect to MySqld. Can't continue!");
>
> On scripts I create I add a function called report_error(); It[/color]
accepts[color=blue]
> one argument and that is the error message to be displayed. If an[/color]
error[color=blue]
> is to occur then an email is sent to me and an error message is shown
> to the user.[/color]

Well the easiest/best way to do this would acctually be to use the @
symbol before the function to cache the error, and then use the !
operator like so..
$query = @mysql_query("SELECT * FROM news",$db);
if(!$query){
//code for error here
echo "error?";
}

jblanch
Guest
 
Posts: n/a
#5: Jul 17 '05

re: Errors in php/mySQL


jOrdi3.tar.gz@gmail.com wrote:[color=blue]
> You can do this several ways.
>
> 1. You can turn error reporting off by putting this at the top of the
> script
>
> error_reporting(0);
>
> 2. You can create an error handler like so
>
> $connection = mysql_connect($host,$username,$password) or die("Could
> not connect to MySqld. Can't continue!");
>
> On scripts I create I add a function called report_error(); It[/color]
accepts[color=blue]
> one argument and that is the error message to be displayed. If an[/color]
error[color=blue]
> is to occur then an email is sent to me and an error message is shown
> to the user.[/color]

Well the easiest/best way to do this would acctually be to use the @
symbol before the function to cache the error, and then use the !
operator like so..
$query = @mysql_query("SELECT * FROM news",$db);
if(!$query){
//code for error here
echo "error?";
}

I personally find this better because then you can have personalized
code like the emailing, because with the die function it just exits the
code with a message, if you use my method you can run any code you
want, or continue with the page. The @ is like saying "when an error
occurs, just return the error, don't display it".

examples..
@mysql_connect(...)
@mysql_select_db(...)
@mysql_query(...)

any function you want.

jblanch
Guest
 
Posts: n/a
#6: Jul 17 '05

re: Errors in php/mySQL


jOrdi3.tar.gz@gmail.com wrote:[color=blue]
> You can do this several ways.
>
> 1. You can turn error reporting off by putting this at the top of the
> script
>
> error_reporting(0);
>
> 2. You can create an error handler like so
>
> $connection = mysql_connect($host,$username,$password) or die("Could
> not connect to MySqld. Can't continue!");
>
> On scripts I create I add a function called report_error(); It[/color]
accepts[color=blue]
> one argument and that is the error message to be displayed. If an[/color]
error[color=blue]
> is to occur then an email is sent to me and an error message is shown
> to the user.[/color]

Well the easiest/best way to do this would acctually be to use the @
symbol before the function to cache the error, and then use the !
operator like so..
$query = @mysql_query("SELECT * FROM news",$db);
if(!$query){
//code for error here
echo "error?";
}

I personally find this better because then you can have personalized
code like the emailing, because with the die function it just exits the
code with a message, if you use my method you can run any code you
want, or continue with the page. The @ is like saying "when an error
occurs, just return the error, don't display it".

examples..
@mysql_connect(...)
@mysql_select_db(...)
@mysql_query(...)

any function you want.

jblanch
Guest
 
Posts: n/a
#7: Jul 17 '05

re: Errors in php/mySQL



jOrdi3.tar.gz@gmail.com wrote:[color=blue]
> You can do this several ways.
>
> 1. You can turn error reporting off by putting this at the top of the
> script
>
> error_reporting(0);
>
> 2. You can create an error handler like so
>
> $connection = mysql_connect($host,$username,$password) or die("Could
> not connect to MySqld. Can't continue!");
>
> On scripts I create I add a function called report_error(); It[/color]
accepts[color=blue]
> one argument and that is the error message to be displayed. If an[/color]
error[color=blue]
> is to occur then an email is sent to me and an error message is shown
> to the user.[/color]

Well the easiest/best way to do this would acctually be to use the @
symbol before the function to cache the error, and then use the !
operator like so..
$query = @mysql_query("SELECT * FROM news",$db);
if(!$query){
//code for error here
echo "error?";
}

I personally find this better because then you can have personalized
code like the emailing, because with the die function it just exits the
code with a message, if you use my method you can run any code you
want, or continue with the page. The @ is like saying "when an error
occurs, just return the error, don't display it".

examples..
@mysql_connect(...)
@mysql_select_db(...)
@mysql_query(...)

any function you want.

Closed Thread