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.
Fatal error: Call to undefined function: sql_close() in /homepages/4/d161055844/htdocs/board/includes/page_tail.php on line 77
die meldung kommt nur bei ins phpbb integrierten seiten, das forum läuft wie eine eins.
das script selbst schließt nirgends die verbindung und auch sonst ist mir nichts im script bekannt, was den fehler verursachen könnte.
Hi,
ich habe mir das jetzt zwar schonmal runtergeladen aber nur ganz flüchtig drübergeschaut.
Kann es wohl sein, dass du eine eigene sql-class nutzt anstatt die eingebaute von phpBB zu nutzen? Dann solltest du evtl. die eigene sql-class anders instantiieren als mit $db, da diese Variable schon als Handle von phpBB in Beschlag ist.
Wenn's das nicht ist ... ich schau mir das im Laufe des Tages nochmal genauer an.
So long,
Manne.
Try not. Do or do not. There is no try. (YODA) Supportanfragen via E-Mail oder PN werden ignoriert
hab jetzt den close befehl vom phpbb in die sql.class.php von meinem script kopiert und es geht ohne fehler
kann es sein, dass man nicht zwei classen hintereinander laden darf/sollte?
es wird ja erst die class vom phpbb geladen und danach meine eigene, wenn das phpbb aber wie im footer verlangt die verbindung schließen will findet es den befehl nicht, weil in der zuletzt geladenen class, nämlich meiner, der befehl nicht existiert. bzw er heisst eben anders...
Du kannst sogar 200 Klassen nacheinander laden, das ist nicht das Problem. Manne hat dir eigentlich alles gesagt was du beachten musst, ich versuche es dir aber nochmals anschaulicher zu erklären:
Auf Klassen greifen wir zu in dem wir ein Objekt aus ihnen machen, dieses bekommt einen Namen, im Falle der phpBB SQL-Klasse ist der Name $db. Hast du jetzt eine weitere Klasse, dessen Objekt du auch den Namen $db gibst, ist ein Zugriff auf das alte Objekt nicht mehr möglich - es wurde ja überschrieben mit dem Objekt deiner neuen Klasse.
Lösung: entweder erweiterst du deine Klasse um sql_close(), wie du gemacht hast. Alternativ, was eigentlich viel saubrere wäre, du gibst dem Objekt deiner Klasse einen anderen Namen, z.B. $db_2.