| |||||||
| Registrieren | Lexikon | Hilfe | Benutzerliste | Kalender | Suchen | Heutige Beiträge | Alle Foren als gelesen markieren |
![]() |
| | Themen-Optionen | Ansicht |
| | #1 (permalink) |
| PostRank: 1 ![]() Registriert seit: 07.12.2007 Ort: Stralsund
Beiträge: 31
| Suche Rat bei einer Fehlermeldung Hallo, ich benutze das Plugin Samsarin um PHP-Code in einem Widget auszuführen. Das Problem ist, dass bei mir das Widget immer an letzter Stelle stehen muss. Steht es zwischen anderen Widgets, die von Wordpress eine Datenbankverbindung erfordern, wird mir ein Fehler angezeigt. Das "lustige": Ich habe den Entwickler von Samsarin schon um Hilfe gebeten und kurioserweise funktioniert der Code und die Ausführung sowohl bei ihm lokal, als auch auf dem Server. Kurz zu meinem Code: Ich öffne eine Datenbankverbindung, Frage die ID aller Bücher ab, die mir gehören und die Anzahl der Kommentare zum Buch. Wähle mir ein zufälliges Buch aus und zeige dessen Bild mit einem Link zur Detailseite an. Beende die Datenbankverbindung. Die Fehlermeldung ist immer folgende: Code: Warning: mysql_error(): 7 is not a valid MySQL-Link resource in /var/www/web333/html/blog/wp-includes/wp-db.php on line 215 Auf dem Server meiner Seite arbeiten PHP 5.1.2 und Wordpress 2.3.1
__________________ Viele Grüße - Eve |
| | |
| | #2 (permalink) |
| WPD-Team ![]() Registriert seit: 05.10.2006
Beiträge: 7.891
| Wie öffnest und schließt du die MySQL-Verbindung? Ich vermute mal, du verwendest einfach keine explizite Verbindungskennung, und PHP schließt an der Stelle entweder die WP-Datenbankverbindung oder überschreibt den internen Resource-Identifikator. Und beim nächsten Versuch die DB zu kontaktieren gibts dann den Fehler. PHP: mysql_connect - Manual |
| | |
| | #3 (permalink) |
| PostRank: 1 ![]() Registriert seit: 07.12.2007 Ort: Stralsund
Beiträge: 31
| Hi danke für deine Antwort, ich öffne die Verbindung mit $verbindung = mysql_connect("localhost", "name", "passwort"); und schließe mit mysql_close($verbindung); um die Datenbank anzusprechen nutze ich nach wie vor mysql_db_query(); Soweit ich weiß, hat mein Helfer (bei dem es geht) nichts an meinem Code verändert.
__________________ Viele Grüße - Eve Geändert von latita (24.02.2008 um 21:29 Uhr). |
| | |
| | #4 (permalink) |
| WPD-Team ![]() Registriert seit: 05.10.2006
Beiträge: 7.891
| Und bei mysql_db_query() übergibst auch $verbindung als 3. Parameter? |
| | |
| | #7 (permalink) |
| PostRank: 1 ![]() Registriert seit: 07.12.2007 Ort: Stralsund
Beiträge: 31
| Eigentlich passiert dann nichts weiter. Es hat keine Auswirkungen. Ich hab das damals reingeschrieben, weil ich dachte es könnte daran liegen. Nachdem es jedoch keine Auswirkungen zeigte, ließ ich es drin, da es an der Stelle ja trotzdem nicht verkehrt ist. Du hast mir ja den Link zum PHP Manual gegeben, den ich auch *hüstel* (nur) überflogen habe.... Mein Helfer hat inzwischen die Lösung gefunden, und wenn man richtig liest, steht die auch im Manual (da hat er das auch her) Wenn man innerhalb eines Skriptes ein zweites Mal mysql_connect aufruft, wird keine neue Verbindung aufgebaut, sondern die Verbindungskennung der schon bestehenden Verbindung zurückgeliefert. Man muss dann also den Wert true bei 'bool $neue_Verbindung' setzen. Und siehe da, es klappt. Eigentlich hätte es bei mir beim Wort bool schon klingeln müssen
__________________ Viele Grüße - Eve |
| | |
| | #8 (permalink) | |
| WPD-Team ![]() Registriert seit: 05.10.2006
Beiträge: 7.891
| Ja, das hatte ich auch erst im Verdacht. Aber dann nicht weiter verfolgt, weil ich mir bei der Zeile Zitat:
Aber wenn du den Fehler gefunden hast ist ja alles in Butter. | |
| | |
![]() |
| Lesezeichen |
| Themen-Optionen | |
| Ansicht | |
| |