Seite 1 von 1

Ausgabe von ungelesenen Beiträgen

Verfasst: 26.03.2015 21:46
von Knowhow-Sauger
Hallo Freunde,

gibt es eine Möglichkeit die ungelesenen Beiträge auf irgendeiner beliebigen Stelle des Forums anzeigen zu lassen?
Weil normalerweise werden die ja nur unter:

Code: Alles auswählen

/search.php?search_id=unreadposts
ausgegeben.

Gibts da eine Möglichkeit?

Danke!

Re: Ausgabe von ungelesenen Beiträgen

Verfasst: 28.03.2015 15:40
von Knowhow-Sauger
Ich hätte da schon einen Lösungsvorschlg parat. Und zwar:
http://www.it-academy.cc/article/722/PH ... lesen.html

Damit kann man den Inhalt anderer Webseiten auslesen.
In diesem Fall wäre das:
http://www.kurzehosenforum.com/search.p ... nreadposts

Das Problem dabei ist nur:
Ich möchte die ungelesenen Beiträge in der overall-header.html ausgeben. Da dies jedoch eine HTML-Seite ist, der Code jedoch PHP- wie kann ich das Problem lösen?

Danke!

Re: Ausgabe von ungelesenen Beiträgen

Verfasst: 31.03.2015 00:31
von Knowhow-Sauger
Warum kann ich ungelesene Beiträge nur in dieser Datei

Code: Alles auswählen

/search.php?search_id=unreadposts
und nirgendwo anders ausgeben? Das verstehe ich nicht.

Re: Ausgabe von ungelesenen Beiträgen

Verfasst: 31.03.2015 01:47
von regazer
Momentan habe ich nicht die Zeit dafür, dem weiter auf den Grund zu gehen, aber vielleicht hilft es Dir trotzdem irgendwie:

includes\functions.php:

Code: Alles auswählen

	// The following assigns all _common_ variables that may be used at any point in a template.
	$template->assign_vars(array(
...
		'U_SEARCH_UNREAD'		=> append_sid("{$phpbb_root_path}search.$phpEx", 'search_id=unreadposts'),
...
search.php

Code: Alles auswählen

// We put login boxes for the case if search_id is newposts, egosearch or unreadposts
// because a guest should be able to log in even if guests search is not permitted

switch ($search_id)
...
	// Search for unread posts needs to be allowed and user to be logged in if topics tracking for guests is disabled
	case 'unreadposts':
		if (!$config['load_unreads_search'])
		{
			$template->assign_var('S_NO_SEARCH', true);
			trigger_error('NO_SEARCH_UNREADS');
		}
		else if (!$config['load_anon_lastread'] && !$user->data['is_registered'])
		{
			login_box('', $user->lang['LOGIN_EXPLAIN_UNREADSEARCH']);
		}
	break;
...
styles\prosilver\template\index_body.html

Code: Alles auswählen

<!-- IF S_DISPLAY_SEARCH or (S_USER_LOGGED_IN and not S_IS_BOT) -->
<ul class="linklist">
	<!-- IF S_DISPLAY_SEARCH -->
		<li><a href="{U_SEARCH_UNANSWERED}">{L_SEARCH_UNANSWERED}</a><!-- IF S_LOAD_UNREADS --> &bull; <a href="{U_SEARCH_UNREAD}">{L_SEARCH_UNREAD}</a><!-- ENDIF --><!-- IF S_USER_LOGGED_IN --> &bull; <a href="{U_SEARCH_NEW}">{L_SEARCH_NEW}</a><!-- ENDIF --> &bull; <a href="{U_SEARCH_ACTIVE_TOPICS}">{L_SEARCH_ACTIVE_TOPICS}</a></li>
	<!-- ENDIF -->
	<!-- IF not S_IS_BOT and U_MARK_FORUMS --><li class="rightside"><a href="{U_MARK_FORUMS}" accesskey="m">{L_MARK_FORUMS_READ}</a></li><!-- ENDIF -->
</ul>
<!-- ENDIF -->
Beachte bitte besonders diese Sequenz:
<!-- IF S_LOAD_UNREADS --> &bull; <a href="{U_SEARCH_UNREAD}">{L_SEARCH_UNREAD}</a><!-- ENDIF -->

Nachtrag: Es könnte sein, daß ich bei search.php jetzt nicht die passende Stelle zitiert habe. Als ich den Beitrag vorhin schon mal zu erstellen versucht hatte, "hing" der Browser und ich mußte dann alles anhand von Screenshots nochmal neu zusammensuchen.

Re: Ausgabe von ungelesenen Beiträgen

Verfasst: 31.03.2015 01:59
von Talk19zehn
Hi, ich weiß zwar nicht, ob das Snippet euch hilft: viewtopic.php?f=85&t=202089&hilit=gelesen
Features:
•Anzeige von (Unbeantwortete Themen • Ungelesene Beiträge • Neue Beiträge • Aktive Themen) auf allen Seiten
•integriert werden (Alle Foren als gelesen markieren bzw. Themen als gelesen markieren)

Würde es zumindest annehmen, wenn es um die reine Verlinkung bspw. im Headerbereich geht. Evtl. sind Anpassungen nötig, da das Snippet phpBB-3.0.6 betraf.

Grüße

Re: Ausgabe von ungelesenen Beiträgen

Verfasst: 31.03.2015 17:50
von Knowhow-Sauger
Danke euch beiden! :)

Aber leider habt ihr mich falsch verstanden. Die Anzahl an ungelesenen Beiträgen bzw. der Link dazu habe ich ja bereits auf allen Seiten bei mir installiert!
Mein Anliegen war, dass man die ungelesenen Beiträge DIREKT (!) im Header sieht.
Also so:
Thread 1
Thread 2
Thread 3
u.s.w.

so dass man diese DIREKT im Header anklicken kann!
Denn so wie es jetzt ist, muss man ja jedes Mal auf "ungelesene Beiträge" klicken.
Wenn man natürlich 120 ungelesene Beiträge hat, würde das den Rahmen logischerweise etwas sprengen, diese auf JEDER Seite (also im overall_header) ausgeben zu lassen. Meine Idee war daher, nur die ersten 3 Threads im Header anzeigen zu lassen und den Rest dann via Klick zu den ganzen Ungelesenen.
Oder aber als Scrollbar.

Geht sowas?
Im Prinzip muss man da doch gar nicht viel verändern (habe ich mir zumindest gedacht), denn die Ausagbe der ungelesenen Beiträge GIBT es ja bereits. Nur eben nur auf dieser Seite:

Code: Alles auswählen

/search.php?search_id=unreadposts
Und ich möchte die ungelesenen Beiträge in der overall_header ausgeben.

Gibt es eine Möglichkeit?
Danke! :)

Re: Ausgabe von ungelesenen Beiträgen

Verfasst: 08.04.2015 15:39
von Elsensee
Falls das Thema noch aktuell sein sollte: :oops: :wink:

Die Funktion get_unread_topics() aus der includes/functions.php könnte dich hierbei vielleicht interessieren. :wink: :D
Wenn du diese wie folgt benutzt: array_keys(get_unread_topics(false, '', '', 3));bekommst du die IDs der 3 neusten ungelesenen Themen. Die Namen musst du nun noch selbst aus der Datenbank fischen, und die Links kann man sich bestimmt auch noch irgendwie zusammensuchen. Vielleicht findest du ja noch was, aber wenn nicht, helfen wir dir hier sicherlich gerne weiter. :)

Re: Ausgabe von ungelesenen Beiträgen

Verfasst: 08.04.2015 15:52
von Knowhow-Sauger
Elsensee hat geschrieben:Falls das Thema noch aktuell sein sollte: :oops: :wink:

Die Funktion get_unread_topics() aus der includes/functions.php könnte dich hierbei vielleicht interessieren. :wink: :D
Wenn du diese wie folgt benutzt: array_keys(get_unread_topics(false, '', '', 3));bekommst du die IDs der 3 neusten ungelesenen Themen. Die Namen musst du nun noch selbst aus der Datenbank fischen, und die Links kann man sich bestimmt auch noch irgendwie zusammensuchen. Vielleicht findest du ja noch was, aber wenn nicht, helfen wir dir hier sicherlich gerne weiter. :)
Soo einfach ist das? Das ist ja genial! :)
Welche Namen muss ich da genau aus der Datenbank fischen? Und welchen Code muss ich dazu im overall_header einsetzen? Weil der akzeptiert ja nur HTML. :cookie:

Danke! 8)