Advanced Post Time Edit: Letzter Beitrag
Forumsregeln
Auch wenn hier der Support für phpBB 2 weiterhin aufrecht erhalten bleibt, weisen wir darauf hin, dass das phpBB 2 nicht mehr offiziell unterstützt und weiterentwickelt wird!
Auch wenn hier der Support für phpBB 2 weiterhin aufrecht erhalten bleibt, weisen wir darauf hin, dass das phpBB 2 nicht mehr offiziell unterstützt und weiterentwickelt wird!
Advanced Post Time Edit: Letzter Beitrag
Deine phpBB Version: Vanilla phpBB 2.0.17
MODs: Ja
Dein Wissensstand: Profi
Link zu Deinem Forum: [url]http://[/url]
PHP Version:
MySQL Version:
Was hast Du gemacht, bevor das Problem aufgetreten ist?
Was hast Du bereits versucht um das Problem zu lösen?
Fehlerbeschreibung und Nachricht
Hallo,
wäre fein, wenn auch das letzte Posting für die Forenübersicht bei dem Forum aktualisiert würde, wenn das geänderte post_time jünger als dessen post_time ist.
Macht sonst einen etwas inkonsistenten Eindruck ;-)
Grüße, Arno.
MODs: Ja
Dein Wissensstand: Profi
Link zu Deinem Forum: [url]http://[/url]
PHP Version:
MySQL Version:
Was hast Du gemacht, bevor das Problem aufgetreten ist?
Was hast Du bereits versucht um das Problem zu lösen?
Fehlerbeschreibung und Nachricht
Hallo,
wäre fein, wenn auch das letzte Posting für die Forenübersicht bei dem Forum aktualisiert würde, wenn das geänderte post_time jünger als dessen post_time ist.
Macht sonst einen etwas inkonsistenten Eindruck ;-)
Grüße, Arno.
[quote="oxpus - Mo 21.Nov, 2005 23:24";p="48905"]Forum resyncen und dann ist gut.
Man kann schliesslich nicht auf alle MODs Rücksicht nehmen
[/quote]
Resync hilft nicht. phpbb sortiert nach id´s und geht davon aus, dass die höchste id der letzte Beitrag ist. Außerdem könnte das nur der Admin und kein Moderator.
Für die Beiträge habe ich die Sortierung auf post_time geändert. Und in deiner edit_post_time.php ist die forum_last_post_id nach Aktualisierung der post_time noch auf die post_id des jüngsten Beitrags des betreffenden Forums zu aktualisieren. Das habe ich bei mir alles schon geändert. Ich denke aber, dass es von allgemeinem Interesse ist und du kannst das bestimmt auch eleganter, als ich. Ich bin ASP-Programmierer und nur rudimentär php.
Wieso heisst das hier eigentlich Supportforum? Oder versteh ich deinen Humor nicht, wenn du meinst ich solle dann einfach deinen MOD nicht verwenden?
Man kann schliesslich nicht auf alle MODs Rücksicht nehmen
Resync hilft nicht. phpbb sortiert nach id´s und geht davon aus, dass die höchste id der letzte Beitrag ist. Außerdem könnte das nur der Admin und kein Moderator.
Für die Beiträge habe ich die Sortierung auf post_time geändert. Und in deiner edit_post_time.php ist die forum_last_post_id nach Aktualisierung der post_time noch auf die post_id des jüngsten Beitrags des betreffenden Forums zu aktualisieren. Das habe ich bei mir alles schon geändert. Ich denke aber, dass es von allgemeinem Interesse ist und du kannst das bestimmt auch eleganter, als ich. Ich bin ASP-Programmierer und nur rudimentär php.
Wieso heisst das hier eigentlich Supportforum? Oder versteh ich deinen Humor nicht, wenn du meinst ich solle dann einfach deinen MOD nicht verwenden?
Zuletzt geändert von Gigabryte am Di 22.Nov, 2005 10:33, insgesamt 1-mal geändert.
Seit wann?phpbb sortiert nach id´s und geht davon aus, dass die höchste id der letzte Beitrag ist
Also ich betreibe 3 eigene Boards und bin Moderator sowie Co. Admin in ca. 6 weiteren phpBBs. Bei allen wird in der viewtopic nach post_time sortiert.
Lediglich die recent-topic Boxen (im Portal) arbeiten meistens nach der ID. :rolleyes:
versteh ich deinen Humor nicht, wenn du meinst ich solle dann einfach deinen MOD nicht verwenden?
Ich kann lediglich einen Hinweis darauf entdecken das er, beim erstellen von MODs, nicht alle bereits exestierenden MODs mit berücksichtigen kann.
[center].: Web Relax .::. Essen mit Freude .::. AmigaLink.de :.
______________________________________
Kein Support per PM, ICQ oder eMail!!![/center]
______________________________________
Kein Support per PM, ICQ oder eMail!!![/center]
Richtig, viewtopic wird auch chronologisch nach post_time sortiert aber Thema verfehlt ;-)
Thema war aber die Foren-Übersicht in der in der rechten Spalte der letzte Beitrag angezeigt wird.
Das ist nicht nur bei Portallösungen so, sondern auch im Standard-subSilver.
Der letzte Beitrag wird für die index.php der forum_last_post_id der Forums-Tabelle entnommen.
Der andere Problempunkt ist die viewforum.php, dort wird nach topic_last_post_id sortiert.
Beides hat mit keinem anderen Mod zu tun. Das Editieren der Beitragszeit stört aber die Logik von php an diesen Stellen, daher finde ich das unbedingt ändernswert.
Thema war aber die Foren-Übersicht in der in der rechten Spalte der letzte Beitrag angezeigt wird.
Das ist nicht nur bei Portallösungen so, sondern auch im Standard-subSilver.
Der letzte Beitrag wird für die index.php der forum_last_post_id der Forums-Tabelle entnommen.
Der andere Problempunkt ist die viewforum.php, dort wird nach topic_last_post_id sortiert.
Beides hat mit keinem anderen Mod zu tun. Das Editieren der Beitragszeit stört aber die Logik von php an diesen Stellen, daher finde ich das unbedingt ändernswert.
- oxpus
- Administrator
- Beiträge: 28735
- Registriert: Mo 27.Jan, 2003 22:13
- Wohnort: Bad Wildungen
- Kontaktdaten:
Ah, jetzt weiß ich, was Du meinst!
Klar, das ist ein dicker Fehler.
Den werde ich nachher korrigieren...
Klar, das ist ein dicker Fehler.
Den werde ich nachher korrigieren...
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
- oxpus
- Administrator
- Beiträge: 28735
- Registriert: Mo 27.Jan, 2003 22:13
- Wohnort: Bad Wildungen
- Kontaktdaten:
Okay. Ich hoffe, es reicht so, wie ich es jetzt beschrieben habe:
und die angehängte Datei ersetzen.
Bearbeite danach nochmal die Zeit des betreffenden Posts und der letzte Post auf dem Index sollte korrigiert werden.
Wenn alles i.O. ist, gib bitte Laut, damit ich den MOD neu veröffentlichen kann.
Code: Alles auswählen
#
#-----[ OPEN ]-----
#
includes/functions_post.php
#
#-----[ FIND ]-----
#
if ($topic_update_sql != '')
{
$sql = "UPDATE " . TOPICS_TABLE . " SET
$topic_update_sql
WHERE topic_id = $topic_id";
if (!$db->sql_query($sql))
{
message_die(GENERAL_ERROR, 'Error in posting', '', __LINE__, __FILE__, $sql);
}
}
#
#-----[ AFTER, ADD ]-----
#
first_last_post_sync($post_id);
#
#-----[ FIND ]-----
#
?>
#
#-----[ BEFORE, ADD ]-----
#
function first_last_post_sync($post_id)
{
global $db;
$sql = "SELECT f.forum_last_post_id, f.forum_id, t.topic_first_post_id, t.topic_last_post_id, t.topic_id FROM " . FORUMS_TABLE . " f, " . TOPICS_TABLE . " t, " . POSTS_TABLE . " p
WHERE f.forum_id = p.forum_id
AND t.topic_id = p.topic_id
AND p.post_id = $post_id";
if (!$result = $db->sql_query($sql))
{
message_die(GENERAL_ERROR, 'Could not resync last forum post id', '', __LINE__, __FILE__, $sql);
}
while ($row = $db->sql_fetchrow($result))
{
$forum_id = $row['forum_id'];
$topic_id = $row['topic_id'];
$forum_last_post_id = $row['forum_last_post_id'];
$topic_first_post_id = $row['topic_first_post_id'];
$topic_last_post_id = $row['topic_last_post_id'];
}
$db->sql_freeresult($result);
if ($forum_last_post_id == $post_id)
{
$sql = "SELECT post_id FROM " . POSTS_TABLE . "
WHERE forum_id = $forum_id
ORDER BY post_time DESC
LIMIT 1";
if (!$result = $db->sql_query($sql))
{
message_die(GENERAL_ERROR, 'Could not resync last forum post id', '', __LINE__, __FILE__, $sql);
}
$row = $db->sql_fetchrow($result);
$new_last_post_id = $row['post_id'];
$db->sql_freeresult($result);
$sql = "UPDATE " . FORUMS_TABLE . "
SET forum_last_post_id = $new_last_post_id
WHERE forum_id = $forum_id";
if (!$db->sql_query($sql))
{
message_die(GENERAL_ERROR, 'Could not resync last forum post id', '', __LINE__, __FILE__, $sql);
}
}
if ($topic_first_post_id == $post_id || $topic_last_post_id == $post_id)
{
$sql = "SELECT post_id FROM " . POSTS_TABLE . "
WHERE topic_id = $topic_id
ORDER BY post_time ASC
LIMIT 1";
if (!$result = $db->sql_query($sql))
{
message_die(GENERAL_ERROR, 'Could not resync first topic post id', '', __LINE__, __FILE__, $sql);
}
$row = $db->sql_fetchrow($result);
$new_first_post_id = $row['post_id'];
$db->sql_freeresult($result);
$sql = "SELECT post_id FROM " . POSTS_TABLE . "
WHERE topic_id = $topic_id
ORDER BY post_time DESC
LIMIT 1";
if (!$result = $db->sql_query($sql))
{
message_die(GENERAL_ERROR, 'Could not resync last topic post id', '', __LINE__, __FILE__, $sql);
}
$row = $db->sql_fetchrow($result);
$new_last_post_id = $row['post_id'];
$db->sql_freeresult($result);
$sql = "UPDATE " . TOPICS_TABLE . "
SET topic_first_post_id = $new_first_post_id, topic_last_post_id = $new_last_post_id
WHERE topic_id = $topic_id";
if (!$db->sql_query($sql))
{
message_die(GENERAL_ERROR, 'Could not resync first/last topic post id', '', __LINE__, __FILE__, $sql);
}
}
return;
}
#
#-----[ SAVE/CLOSE ALL FILES ]-----
#
# EoMBearbeite danach nochmal die Zeit des betreffenden Posts und der letzte Post auf dem Index sollte korrigiert werden.
Wenn alles i.O. ist, gib bitte Laut, damit ich den MOD neu veröffentlichen kann.
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
Ah jetzt ja.Thema war aber die Foren-Übersicht in der in der rechten Spalte der letzte Beitrag angezeigt wird.

[center].: Web Relax .::. Essen mit Freude .::. AmigaLink.de :.
______________________________________
Kein Support per PM, ICQ oder eMail!!![/center]
______________________________________
Kein Support per PM, ICQ oder eMail!!![/center]
- oxpus
- Administrator
- Beiträge: 28735
- Registriert: Mo 27.Jan, 2003 22:13
- Wohnort: Bad Wildungen
- Kontaktdaten:
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
Ohhhh, sorry.oxpus hat geschrieben:Datei vergessen. Macht nichts, ich habe den MOD nun eh aktualisiert. Version 1.0.1 sollte damit nun auch diesen Fehler beheben.
Entweder hab ich die Benachrichtigung verpennt oder der Mailserver war im Sober-Stress und ich habe keine bekommen.
Sehe jetzt erst das Update.
Dann lade ich mir die Zip runter und schau mal was geändert ist.
many thx.