Connecting Tech Pros Worldwide Help | Site Map

Errors in php/mySQL

  #1  
Old July 17th, 2005, 10:57 AM
knoak
Guest
 
Posts: n/a
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
  #2  
Old July 17th, 2005, 10:57 AM
Pedro Graca
Guest
 
Posts: n/a

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!
  #3  
Old July 17th, 2005, 10:57 AM
jOrdi3.tar.gz@gmail.com
Guest
 
Posts: n/a

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.

  #4  
Old July 17th, 2005, 10:58 AM
jblanch
Guest
 
Posts: n/a

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?";
}

  #5  
Old July 17th, 2005, 10:58 AM
jblanch
Guest
 
Posts: n/a

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.

  #6  
Old July 17th, 2005, 10:58 AM
jblanch
Guest
 
Posts: n/a

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.

  #7  
Old July 17th, 2005, 10:58 AM
jblanch
Guest
 
Posts: n/a

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


Similar Threads
Thread Thread Starter Forum Replies Last Post
Creating a Data Abstraction Layer in PHP Motoma insights 12 March 5th, 2009 03:21 AM
script dies yet there are no errors in error log Lawrence Krubner answers 15 October 24th, 2008 07:25 PM
Easy (?) PHP/MySQL question Stevebo answers 8 September 22nd, 2008 12:05 PM
ODBC Errors In Query Steve answers 2 July 17th, 2005 10:16 AM