Zugriff auf $db in eigener php-Datei

In diesem Forum kann man Fragen zur Programmierung stellen, die bei der Entwicklung von Mods für phpBB 3.0.x oder dem Modifizieren des eigenen Forums auftauchen.
Forumsregeln
phpBB 3.0 hat das Ende seiner Lebenszeit überschritten
phpBB 3.0 wird nicht mehr aktiv unterstützt. Insbesondere werden - auch bei Sicherheitslücken - keine Patches mehr bereitgestellt. Der Einsatz von phpBB 3.0 erfolgt daher auf eigene Gefahr. Wir empfehlen einen Umstieg auf die neuste phpBB-Version, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
Antworten
phpbbfan3
Mitglied
Beiträge: 33
Registriert: 15.04.2010 00:36

Zugriff auf $db in eigener php-Datei

Beitrag von phpbbfan3 »

Hallo,

ich versuche es schon den ganzen Nachmittag - in einer eigenen download.php will ich einen Download-Counter in einer Mysql-Tabelle aktualisieren.

Dazu will ich die phpbb-Connection $db aus common.php verwenden.
Beim Zugriff mit $db->sql_query() kommt der Fehler "Call to a member function sql_query() on a non-object".

Ok, er kennt die $db nicht. "global $db;" in download.php hat auch nicht geholfen. Was muss ich machen, damit ich die
aktuelle DB-Connection $db (aus common.php) nutzen kann? Es gibt zwar viele Themen dazu, aber mir hats nicht geholfen.

Für Euch wahrscheinlich ein Klacks - verratet mir bitte den Trick ;-)

Grüße
wos
Benutzeravatar
HabNurNeFrage
Ehemaliges Teammitglied
Beiträge: 1627
Registriert: 17.01.2010 20:22
Wohnort: An der Ostsee
Kontaktdaten:

Re: Zugriff auf $db in eigener php-Datei

Beitrag von HabNurNeFrage »

Hi,

Vielleicht helfen Dir diese Links:
https://wiki.phpbb.com/Using_the_phpBB3.0_DBAL
https://wiki.phpbb.com/Database_Abstraction_Layer

Es könnte sein, dass die Klasse DBAL in Deinem Script nicht oder nicht richtig eingebunden ist.
Anscheinend will die Methode deshalb noch nicht.

LG
| HomeStory.org - the friendly Community | Forum für alle Lebenslagen | <"}))}~ | Nicht nachmachen: Meine phpBB Spielereien |
var shoppen = geld.replace (/geld/g, 'bloedsinn'); if (geld < 1) { return home; };
Verschoben von phpBB 3.0: Administration und Benutzung nach phpBB 3.0: Mod-Bastelstube am 02.04.2013 00:14 durch Metzle

phpbbfan3
Mitglied
Beiträge: 33
Registriert: 15.04.2010 00:36

Re: Zugriff auf $db in eigener php-Datei

Beitrag von phpbbfan3 »

Danke fürs Feedback.

Sowas in der Form wie
define('IN_PHPBB', true);
$phpbb_root_path = './';
$phpEx = substr(strrchr(__FILE__, '.'), 1);
include($phpbb_root_path . 'common.' . $phpEx);

hatte ich versucht, da steht im Log aber ne PHP-Warning, weil ich mit header() "Content-Type und Content-Disposition rausschreibe und dann mit readfile() das download file sende:
"Cannot modify header informations" => das kommt aus functions.php, send_status_line(), dort wird auch ein header() geschrieben...

Der Fehler mit $db erscheint nicht mehr. Nach dem entfernen des ";" aus dem sql-String funktioniert ENDLICH auch das Update.

Vielen Dank!
Antworten

Zurück zu „[3.0.x] Mod Bastelstube“