Seite 23 von 45

Verfasst: 09.02.2004 18:04
von ___
wäre cool wenn du mir demnächst antworten könntest...

lg
JOO

Verfasst: 10.02.2004 16:56
von Jerichos
Ich hatt vor kurzem hier ein Problem geschildert (über das schon diskutiert wurde), aber anscheinend ist das mit dem Plattencrash verloren gegangen.

Und zwar bekomm ich nach einem PHP Upgrade von 4.2.2 auf 4.3.3 nur noch eine weiße Seite, wenn ich die recent.php aufrufe.
Ich verwende das Recent(3) Paket (Ver 1.2) als eigenständige Seite.
Wie gesagt, das Script arbeitete einwandfrei. Erst seit dem Upgrade hab ich dieses Problem.

Danke für Eure Hilfe!

Verfasst: 11.02.2004 14:03
von ___
ach, bidddee antworte doch mal einer, ich brauch das so langsam echt dringend

bitttttteeeeee :( bitte, bitte, bitte

lg
JOO

Verfasst: 12.02.2004 00:00
von Jerichos
*** hat geschrieben:ach, bidddee antworte doch mal einer, ich brauch das so langsam echt dringend

bitttttteeeeee :( bitte, bitte, bitte

lg
JOO
Dupliziere die recent.php zweimal, so dass Du drei hast, und lasst Dir dann halt nur die Beiträge aus den entsprechenden Foren anzeigen.
Sprich in der SQL-Abfrage die entsprechenden Bedingungen setzen, so dass er eben nur auf ein bestimmtes (forum_id) Forum zugreift bzw. im letzten Fall auf alle restlichen.
Wenn Du nicht weißt wovon ich rede, dann würd ich meinen Mund hier nicht so aufreißen, denn sonst bekommst gar keine Lösung, weil jeder dann auf stur schaltet. ;)

Verfasst: 16.02.2004 12:31
von Acid
@Jerichos
Wenn gZip aktiviert ist, deaktiviere es mal kurz.. vielleicht wird dann eine Fehlermeldung bei der recent.php ausgespuckt.

@***
Sorry, ich hatte die letzten Tage keinen Zugriff auf meinen richtigen Computer.
Nur nochmal zur Sicherheit: Du willst 3x jeweils verschiedene Foren auslesen, was dann unterteilt als ein Block auf dem Index angezeigt wird ?

Verfasst: 16.02.2004 12:45
von Jerichos
@Acid:
Fatal error: Allowed memory size of 8388608 bytes exhausted at (null):0 (tried to allocate 12 bytes) in /var/www/phpBB2/recent.php on line 55
Die Fehlermeldung kam schonmal in diesem Thread, ging aber verloren im durch den Festplattencrash.

Wie gesagt außer dem Update von PHP wurde nichts verändert.
Hab auch schon die Zeilen eingrenzen können, in der wohl dieser Fehler auftritt. Jedenfalls nachdem ich die Zeilen gequotet habe, erschien zumindest schonmal wieder das Template.

Code: Alles auswählen

if ( $recent_author == '' && $auth_sql == '' )
                {
                        $sql = "SELECT topic_id FROM " . POSTS_TABLE . "
                                WHERE post_id IN (" . implode(', ', $recent_ids) . ") 
                                $where_sql GROUP BY topic_id";
                }
                else
                {
                        $from_sql = POSTS_TABLE . " p"; 
                        if ( $auth_sql != '' )
                        {
                                $from_sql .= ", " . FORUMS_TABLE . " f";
                                $where_sql .= " AND f.forum_id = p.forum_id AND $auth_sql";
                        }
                        $sql = "SELECT p.topic_id FROM $from_sql 
                                WHERE p.post_id IN (" . implode(', ', $recent_ids) . ") 
                                $where_sql GROUP BY p.topic_id";
                }
                if ( !($result = $db->sql_query($sql)) )
                {
                        message_die(GENERAL_ERROR, 'Could not obtain topic ids', '', __LINE__, __FILE__, $sql);
                }

                $recent_ids = array();
                while( $row = $db->sql_fetchrow($result) )
                {
                        $recent_ids[] = $row['topic_id'];
                }
                $db->sql_freeresult($result);
Wär klasse, wenn Du mir nen Tip geben könntest, an was es liegt. Das Script vermissen die User enorm. ;)

Verfasst: 16.02.2004 13:06
von Acid
Naja, das is´n Teil der Authorisations-Abfrage, die dann die topic ids ausliest, welche im späteren Query übergeben werden.
Es wird einfach zuviel abgefragt, als der Server verkraftet. (Scho seltsam das ´ne neuere php-Version das mitverursacht.)

Wieviel User/Beiträge habt´s denn so ?

Verfasst: 16.02.2004 13:12
von Jerichos
Acid hat geschrieben:Naja, das is´n Teil der Authorisations-Abfrage, die dann die topic ids ausliest, welche im späteren Query übergeben werden.
Es wird einfach zuviel abgefragt, als der Server verkraftet. (Scho seltsam das ´ne neuere php-Version das mitverursacht.)

Wieviel User/Beiträge habt´s denn so ?
Fast 1700 User und 385 Beiträge am Tag.
Öhm, der Server kann´s eigentlich nicht sein, Wir haben beim Wechsel eine Sprung um einige Lichtjahre gemacht. Von 1,2GHz Celeron mit 256MB RAM auf P4 3,2 GHz und 1GB RAM. Wirklich alles andere läuft wie am Schnürchen, aber die recent.php will nicht laufen.
In Zeile 55 steht ja die "implode"-Funktion. Evtl. bloß ne php.ini Einstellung? Wir sind root, wär also kein Thema.
Das Script ist so genial, bitte sag, dass es ne Lösung gibt. :roll:

Verfasst: 17.02.2004 22:18
von Acid
Mit der aktuellsten Version der recent3-Variante kann man ja auch nur spezielle Foren angeben, welche angezeigt werden sollen (s. Anfang der recent.php). Könntest du mal testweise nur ein Forum einstellen usw.
Jedenfalls nachdem ich die Zeilen gequotet habe, erschien zumindest schonmal wieder das Template.
Was meinst du mit "gequotet" ..auskommentiert ?

Verfasst: 17.02.2004 22:47
von Jerichos
Acid hat geschrieben:Was meinst du mit "gequotet" ..auskommentiert ?
Japp, sorry wenn ich mich mißverständlich ausgedrückt habe.
Ich weiß nicht, ob das ja der richtige Weg war. Evtl. ja auch nicht.

Die Jungs von phpBB.com haben bisher auch keine Lösung zu dem allgemeinen Problem gefunden -> Link