Handling MySQL Errors

The script in Example 11-2 includes MySQL error handling. Errors can occur in many different cases. For example, the MySQL DBMS might be unavailable, it might not be possible to establish a connection because the DBMS user’s credentials are incorrect, or an SQL query might be incorrectly formed.

Consider a fragment from Example 11-2:

// Run the query
if (!($result = @ mysql_query ($query, $connection))) 
   showerror(  );

If the mysql_query( ) function returns false, the function showerror( ) is called to output details of the error:

// Show an error and stop the script
function showerror(  )
{
   if (mysql_error(  ))
      die("Error " . mysql_errno() . " : " . mysql_error(  ));
   else
      die("Could not connect to the DBMS");
}

If a MySQL error has occurred, the script outputs the error number and a descriptive string, and the PHP engine stops. If the error isn’t a MySQL error, there is a problem connecting to the DBMS with mysql_pconnect( ). The showerror( ) function is part of the db.inc include file.

When a function such as showerror( ) is used, MySQL function calls are usually prefixed with the @ operator. The @ stops the PHP engine from outputting its own internal error messages. If the @ is omitted, the output of showerror( ) is shown interleaved with the PHP engine’s internal error messages, which can be confusing to debug.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset