Seite 24 von 45

Verfasst: 18.02.2004 14:32
von ___
Acid hat geschrieben: @***
Nur nochmal zur Sicherheit: Du willst 3x jeweils verschiedene Foren auslesen, was dann unterteilt als ein Block auf dem Index angezeigt wird ?
Also: Ich möchte auf meiner portal.php

1) die letzten Themen aus einem Forum y
2) die letzten Themen aus einem Forum x
3) die letzten Themen aus allen restlichen Foren ( also nicht y und x)

angezeigt bekommen. Am besten in drei verschieden Tabellen.

Falls noch was unklar ist oder ich mich unverständlich ausgetrügt hab frag einfach nochmal nach :wink:

Besten Dank für deine Mühe, lg
JOO

Verfasst: 21.02.2004 23:14
von Acid
Dupliziere zunächst die recent.php, so das du 3 Versionen davon hast (benenne sie recent1.php, recent2.php, recent3.php).
Anstelle der recent.php includest du dann diese 3 recent-Dateien in der index.php.

Code: Alles auswählen

include($phpbb_root_path . 'recent1.'.$phpEx);
include($phpbb_root_path . 'recent2.'.$phpEx);
include($phpbb_root_path . 'recent3.'.$phpEx);
Der Code in der index_body.tpl bzw. portal_body.tpl für das recent-Zeugs muss ebenfalls dupliziert werden, so das er 3 mal vorkommt. Bei dem Code findest du des öfteren das Wort "recent", welches in den 3 Varianten angepasst werden muss. Also "recent1" bei dem ersten Teil..
<table width="100%" cellpadding="1" cellspacing="1" border="0" align="center" class="forumline">
<tr>
<th colspan="6">{L_RECENT_TITLE}</th>
</tr>
<!-- BEGIN recent1 -->
<tr>
<td class="{recent1.ROW_CLASS}" align="center" valign="middle">{recent1.TOPIC_FOLDER_IMG}</td>
<td class="{recent1.ROW_CLASS}"><a href="{recent1.U_VIEW_FORUM}" class="genmed">{recent1.FORUM_NAME}</td>
<td class="{recent1.ROW_CLASS}"><span class="topictitle">{recent1.NEWEST_IMG}{recent1.TOPIC_TYPE}<a href="{recent1.U_VIEW_TOPIC}" class="topictitle">{recent1.TOPIC_TITLE}</a></span>
<font size="-6">{recent1.GOTO_PAGE}<br />{recent1.L_STARTED} {recent1.FIRST_TIME} {recent1.L_BY} {recent1.FIRST_AUTHOR}</font></td>
<td class="{recent1.ROW_CLASS}" align="right"><span class="postdetails">{recent1.REPLIES} {recent1.L_REPLIES}&nbsp;&nbsp;
<br />{recent1.VIEWS} {recent1.L_VIEWS}</span>&nbsp;&nbsp;</td>
<td class="{recent1.ROW_CLASS}" align="right" valign="middle" nowrap="nowrap"><span class="gensmall"> {recent1.LAST_URL} {recent1.LAST_TIME}&nbsp;&nbsp;
<br />{recent1.LAST_AUTHOR}</span>&nbsp;&nbsp;</td>
</tr>
<!-- END recent1 -->
</table>
..und "recent2" bzw. "recent3" in den anderen beiden Teilen.
In der recent1.php aktivierst du dann die Forenangabe-Funktion ($special_forums) und gibst bei $forums dann die ID von Forum y an.
$special_forums = '1'; // 0 = no; 1 = yes
$forums = '1'; // ID of forums; separate them with a comma
Das gleiche in grün bei der recent2.php, nur das du dort die ID von Forum x angibst.
Ähnliche Vorgehensweise bei der recent3.php, nur das du dort die IDs von Forum x und y angibst. Desweiteren musst du in der recent3.php bei folgender Zeile aus dem zweiten IN ein NOT IN machen. Das bewirkt dann, das alle Foren ausser x und y mit der recent3.php ausgelesen werden.
$where_part1 = ( $special_forums == '0' ) ? 't.topic_id IN ('.$auth_results.')' : 'f.forum_id IN ('.$forums.')';

Verfasst: 23.02.2004 13:44
von Kobold_EB
Hi, ich verwende wahrscheinlich die 1. Version des MODs, wohl aber eine noch was ältere Version, als die, die aktuell zum Download angeboten wird. Zumindest fehlen bei mir ein paar features ... was aber nicht weiter schlimm ist - bis auf einen Punkt:

Es werden Themen für alle User angezeigt, obwohl diese auf eine bestimmte Gruppe beschränkt sind. Wenn dann ein nichtauthorisierter User draufklickt kommt natürlich "Thema nicht vorhanden".

Da meine recent.php zwecks design modifiziert ist, dachte ich es wäre einfacher zu fragen, welcher Teil des aktuellen scripts für das Gruppenproblem zuständig ist, wobei ich annehme, dass dieser Bug inzwischen behoben ist?!

Meine recent.txt

Verfasst: 24.02.2004 09:46
von Acid
Der Authorisations-Code ist eigentlich der gleiche.. :-?
Ich hab mal auf deiner Seite nachgeschaut und die Themen, die zu sehen waren, konnte man auch anklicken/lesen.

Verfasst: 24.02.2004 11:35
von Kobold_EB
War unglücklich, dass grad kein Thread aus dem Gruppenforum angzeigt wurde.

Ich hab mal extra einen für dich erstellt
Heute - 11:33 (Kobold_EB)
[WI - Sonstige Fächer]
Testthread
Im WI - bereich gibt es 3 versteckte Foren, die nur der WI gruppe zugänglich sind.

edit:
wenn du jetzt natürlich uneingeloggt draufgehst, dann kommt ne loginabfrage, ich erstell mal für dich den user test mit dem pw test.

Verfasst: 24.02.2004 11:45
von Acid
Welche Zugriffsrechte hast du bei dem Forum eingestellt? Wird immer dasselbe Forum "falsch" ausgelesen?

Verfasst: 24.02.2004 12:00
von Kobold_EB
Bei gruppenbefugnisse hab ich für die 3 foren den zugriff gestattet
und bei forenbefugnisse hab ich
Ansicht - privat
Lesen - alle
Posten - reg
.
.
.

schätze, es liegt an dem lesen für alle?

Verfasst: 25.02.2004 12:41
von Acid
Ja, daran liegt es (bzw. am Auth-Code).
Wäre es eine Lösung für dich, wenn du Lesen ebenfalls auf "priv" stellen würdest?

Verfasst: 26.02.2004 14:28
von Kobold_EB
Klar is das ne lösung! ich denk mal das hab ich beim einstellen einfach nicht für wichtig befunden ... und als ich dann die recentpage gebaut hab, das einfach nicht damit in verbindung gebracht.

trotzdem vielen dank! es funzt jetzt

Der gleiche Fehler.

Verfasst: 28.02.2004 00:20
von a00
spritzkuchen hat geschrieben:

Code: Alles auswählen

Fatal error: Allowed memory size of 8388608 bytes exhausted (tried to allocate 6 bytes) in /var/www/site_online/recent.php on line 55
Hmm wohl ein Speicherproblem...ich habe von PHP 4.1.2 auf 4.3.4 upgedated, sonst nix verändert. Muss ich mal meinen Provider fragen.
Ohne das Memory auf 16mb zu erhoehen kommt bei mir nur der page header. Schief scheints ab if ( $recent_forum == -1 ) zu gehen, bis dahin kann man ein message_die machen.
Irgendwo wird da ein query VIEL zu gross.

PHP Version 4.3.1

Anzahl der Beiträge: 65086 Beiträge pro Tag: 113.28
Anzahl der Themen: 11655 Themen pro Tag: 20.29