[Gelöst] Letzte eigene Beiträge

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
Gast234254
Gesperrt
Beiträge: 1999
Registriert: 08.02.2009 22:58

[Gelöst] Letzte eigene Beiträge

Beitrag von Gast234254 »

Ich möchte dem angemeldeten User seine letzten Beiträge anzeigen. Soweit habe ich es geschafft. Was ich nicht hin bekomme, ist das die letzten Beiträge dem jeweiligem angemeldetem User zugeordnet werden. Wie erreiche das? Da benötige ich Hilfe von den Profis hier.

php

Code: Alles auswählen

$sql = "SELECT p.post_id, p.forum_id, p.poster_id, p.post_time, p.post_subject, u.username, u.user_colour, t.topic_title
      		FROM " . POSTS_TABLE . " AS p
					LEFT JOIN " . USERS_TABLE . " AS u
					  ON p.poster_id = u.user_id
          LEFT JOIN " . TOPICS_TABLE . " AS t
					  ON p.topic_id = t.topic_id  
      		WHERE p.post_postcount = 1
      		ORDER BY p.post_time DESC";   
$result = $db->sql_query_limit($sql, 5, 0, 60);

while ($row = $db->sql_fetchrow($result))
{
   $template->assign_block_vars('self_posts', array(
   
		 'SELF_DATE'				=> $user->format_date($row['post_time']),
		 'SELF_POST_SUBJECT' => $row['post_subject'],
		 'SELF_POST_URL' 		=> append_sid("{$phpbb_root_path}viewtopic.$phpEx", 'p='.$row["post_id"].'#p'.$row["post_id"]),
	 ));
}
html

Code: Alles auswählen

					<dd style="font-size: 1.1em; padding-left: 2px;"><!-- BEGIN self_posts --><div><a href="{self_posts.SELF_POST_URL}">{self_posts.SELF_POST_SUBJECT}</a><br />&nbsp;&nbsp;&raquo;{self_posts.SELF_DATE} </div><!-- END self_posts --></dd>
Zuletzt geändert von Gast234254 am 13.08.2013 22:58, insgesamt 1-mal geändert.
Benutzeravatar
Miriam
Mitglied
Beiträge: 12310
Registriert: 13.10.2004 07:18
Kontaktdaten:

Re: Letzte eigene Beiträge

Beitrag von Miriam »

Code: Alles auswählen

$sql = 'SELECT max(post_id) AS post_id, post_time, post_subject FROM ' . POSTS_TABLE . '
            WHERE poster_id = ' . $user->data['user_id'] . '
                GROUP BY topic_id 
                ORDER BY post_id DESC';
Jetzt wird dem angemeldeten User sein jeweils letzter Beitrag (also die Statistik-Infos) aus jedem Thema angezeigt.
Es wird nicht geprüft, ob der User das Thema noch lesen darf oder nicht.
Gruss, Miriam.
Ich schmeiß' alles hin und...
... lasse es liegen
Gast234254
Gesperrt
Beiträge: 1999
Registriert: 08.02.2009 22:58

Re: Letzte eigene Beiträge

Beitrag von Gast234254 »

Miriam hat geschrieben:

Code: Alles auswählen

$sql = 'SELECT topic_id, MAX(post_id) AS post_id, poster_id, post_time, post_subject FROM ' . POSTS_TABLE . '
            where poster_id = ' . (int) $user->data['user_id'] . '
                GROUP BY topic_id
                ORDER BY last_post DESC'; 
Jetzt wird dem angemeldeten User sein jeweils letzter Beitrag (also die Statistik-Infos) aus jedem Thema angezeigt.
Es wird nicht geprüft, ob der User das Thema noch lesen darf oder nicht.
Danke Miriam. :) Das mit den Lese Berechtigungen, könnte ich das so lösen?

Code: Alles auswählen

while ($row = $db->sql_fetchrow($result))
{
	if ( ($auth->acl_get('f_read', $row['forum_id'])) || ($row['forum_id'] == '0') )
	{
   $template->assign_block_vars('self_posts', array(
   
		 'SELF_DATE'				=> $user->format_date($row['post_time']),
		 'SELF_POST_SUBJECT' => $row['post_subject'],
		 'SELF_POST_URL' 		=> append_sid("{$phpbb_root_path}viewtopic.$phpEx", 'p='.$row["post_id"].'#p'.$row["post_id"]),
	));
	}
}
Benutzeravatar
Miriam
Mitglied
Beiträge: 12310
Registriert: 13.10.2004 07:18
Kontaktdaten:

Re: Letzte eigene Beiträge

Beitrag von Miriam »

$auth->acl_get('f_read', $row['forum_id'] sollte ausreichen.
Wenn die Forum-ID (warum auch immer) 0 sein sollte, hat der User da auch keine Lesebrechtigung, weil es dort keine Rechteeinstellung gibt.
Gruss, Miriam.
Ich schmeiß' alles hin und...
... lasse es liegen
Gast234254
Gesperrt
Beiträge: 1999
Registriert: 08.02.2009 22:58

Re: Letzte eigene Beiträge

Beitrag von Gast234254 »

Vielen Dank Miriam. Habe wieder was dazu gelernt. :)
Antworten

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