$db->sql_error()

Fragen zu allen Themen rund ums Programmieren außerhalb von phpBB können hier gestellt werden - auch zu anderen Programmiersprachen oder Software wie Webservern und Editoren.
Antworten
fanrpg
Mitglied
Beiträge: 2909
Registriert: 13.12.2004 22:41

$db->sql_error()

Beitrag von fanrpg »

Also wenn ich eine MySQL Abfrage schreibe und mir falls ein Fehler kommt diese auch ausgeben lassen kann mache ich das so:

Code: Alles auswählen

$result = mysql_query() or die(mysql_error());
Dann gibt er mir auch die Fehlermeldung aus

Aber wenn ich das bei phpBB mit $db->sql_error() mache also so:

Code: Alles auswählen

$result = $db->sql_query() or die($db->sql_error());
Dann gibt er mir anstatt der Fehlermeldung einfach "Array" zurück.

Was muss ich daran ändern das das funktioniert? Oder ist $db->sql_error für sowas nicht ausgelegt?
Benutzeravatar
QCO
Mitglied
Beiträge: 708
Registriert: 15.03.2003 12:30
Wohnort: Leipzig

Beitrag von QCO »

Aus der db/mysql4.php

Code: Alles auswählen

	function sql_error()
	{
		$result['message'] = mysql_error($this->db_connect_id);
		$result['code'] = mysql_errno($this->db_connect_id);

		return $result;
	}
Die Methode gibt also ein Array zurück, das musst du auch entsprechend ausgeben...

Code: Alles auswählen

$result = $db->sql_query() or die(implode('; Code: ', $db->sql_error()));
Schnelle direkte Hilfe? Modeinbau? Umfassender, persönlicher Support? Ein individuelles Design/Template?
Ich bin käuflich und löse zu kleinen Preisen Deine Probleme. Anfragen bitte per PN oder Mail.
LeoManiac
Mitglied
Beiträge: 38
Registriert: 24.11.2005 18:53

Beitrag von LeoManiac »

In Zeiten von PHP5 würd ich nicht mehr mit solchen Error Funktionen arbeiten sondern lieber mit Exceptions.

Mittlerweile gibts die 1. Minor Version da kann man ruhig langsam mal umstellen ... ich will auch gar nicht mehr unter PHP4 entwickeln das ist im Vergleich zur V5 grausig.
Benutzeravatar
QCO
Mitglied
Beiträge: 708
Registriert: 15.03.2003 12:30
Wohnort: Leipzig

Beitrag von QCO »

Ich arbeite auch schon seit einer Weile mit PHP5, aber die Tatsache, dass es kein Release mit den Securityfixes aus der letzen 4er Version gibt, ist schon bedenklich.
Auch solche Meldungen http://www.heise.de/newsticker/meldung/66745 unterstreichen wohl eher, dass die Zeit für massiven PHP5-Einsatz noch nicht ganz reif ist.
Schnelle direkte Hilfe? Modeinbau? Umfassender, persönlicher Support? Ein individuelles Design/Template?
Ich bin käuflich und löse zu kleinen Preisen Deine Probleme. Anfragen bitte per PN oder Mail.
LeoManiac
Mitglied
Beiträge: 38
Registriert: 24.11.2005 18:53

Beitrag von LeoManiac »

Naja ganz ehrlich? Ich kann PEAR nichts abgewinnen...ich nutze es zwar wenn auch nur beruflich aber privat arbeite ich zb. lieber mit meiner MySQL Klasse die schöne Exception wirft das macht das Handling wesentlich einfacher und man braucht nicht ständig auf Fehler zu prüfen ... sondern setzt entweder fürs komplette Script oder nur für bestimmte Bereiche einen Try-Catch Block.
Mann kanns ja auch Kombinieren zb. die ConnectionException kannst ja aufs komplette Script catchen u. QueryExceptions brauchst ja nur dort wo du den Query auch ausführst.

Wenn daran mal wer Interesse hat einfach mal hier melden oder PN ich mach aus meinen privaten Codings kein Geheimnis ;)
Antworten

Zurück zu „Coding & Technik“