Mailinglisten-Archive |
On Tue, Oct 10, 2000 at 03:34:16PM +0200, Koch Markus B wrote:
> Kann ich es ermöglichen das anstelle einer Fehlermeldung auf einer Seite
> die "auch" MySQL Elemente enthält, die restliche Seite nicht geladen wird
> wenn die Verbindung nicht online ist. Zzt habe ich nur eine schwere
> Fehlermeldung, die mir sagt keine Verbindung zur DB herstellbar... Naja
> ich hoffe da gibt's etwas ;o) mfg Markus "Perl is a four letter word."
du kannst doch einfach nachprüfen ob die Verbindung vorhanden ist, und dann
halt anders verzweigen. mysql_connect gibt doch einen Errorcode zurück,
oder nicht?
Noch besser ist das mit der PHPLIB (phplib.netuse.de), da gibts eine eigene
Fehlerbehandlungsmethode. Da machst du das so:
<?
class DB_hh extends DB_Sql {
var $Host = "local-horst";
var $Database = "foo";
var $User = "bar";
var $Password = "XXXXXXXXXX";
var $Halt_On_Error = "report";
var $logfile = "sql.log";
# Fehlermeldungen loggen und zur Fehlerseite springen.
function haltmsg($msg) {
$fp = fopen($logfile, "a+");
$msg = sprintf("%s: error %s (%s) - %s\n",
date("Y-M-D H:i:s"), $this->Errno, $this->Error, $msg);
fputs($fp, $msg);
if(file_exists("dberror.php") {
Header("Location: dberror.php");
} else {
echo "\n\n<!-- $msg -->\n\n";
}
fclose($fp);
}
}
# vim:set syntax=php3:
?>
und benutzen tust du die Klasse dann so:
<?
$q = new DB_hh;
$q->query("select * from tabelle where foo='bar'");
echo "<b>" . $q->f("spalte1") . "</b>\n";
--
"Ich kenne zwar Netbus (bevorzuge allerdings http://www.linuxfaq.de
SubSeven), aber was zur Hölle ist RFC791???!" http://www.hitchhikers.de
-- Karsten in de.org.ccc http://www.jensbenecke.de
php::bar PHP Wiki - Listenarchive