Welcher Code ist für "viewonline.php" wichtig?

Probleme bei der regulären Arbeiten mit phpBB, Fragen zu Vorgehensweisen oder Funktionsweise sowie sonstige Fragen zu phpBB im Allgemeinen.
Forumsregeln
phpBB 2.0 hat das Ende seiner Lebenszeit überschritten
phpBB 2.0 wird nicht mehr aktiv unterstützt. Insbesondere werden - auch bei Sicherheitslücken - keine Patches mehr bereitgestellt. Der Einsatz von phpBB 2.0 erfolgt daher auf eigene Gefahr. Wir empfehlen einen Umstieg auf phpBB 3.1, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
Maxe
Mitglied
Beiträge: 154
Registriert: 15.07.2006 00:17

Welcher Code ist für "viewonline.php" wichtig?

Beitrag von Maxe »

Hallo zusammen,

kurz zur Erklärung was ich mache.
Ich habe ein Wiki mit in das Forum gebaut udn möchte dass in der viewonline.php auch angezeigt wird "... Betrachtet das Wiki".

Beim Impressum habe ich es auch geschaft, aber will jeden zusätzlichen Code im Wiki vermeiden deswegen frage ich welche dafür wichtig ist.

Hier meine Impressum.php

Code: Alles auswählen

<?php

define('IN_PHPBB', true); 

$phpbb_root_path = './'; 
include($phpbb_root_path . 'extension.inc'); 
include($phpbb_root_path . 'common.'.$phpEx); 

$userdata = session_pagestart($user_ip, PAGE_IMPRESSUM); 
init_userprefs($userdata); 

// Load the appropriate impressum language file START
if( isset($HTTP_GET_VARS['mode']) )
{
	switch( $HTTP_GET_VARS['mode'] )
	{
		      default:
			$lang_file = 'lang_impressum';
			$l_title = $lang['impressum'];
			break;
	}
}
else
{
	$lang_file = 'lang_impressum';
	$l_title = $lang['impressum'];
}
include($phpbb_root_path . 'language/lang_' . $board_config['default_lang'] . '/' . $lang_file . '.' . $phpEx);
// Load the appropriate impressum language file ENDE

$page_title = $lang['impressum'];

include($phpbb_root_path . 'includes/page_header.'.$phpEx); 

$template->set_filenames(array( 
'body' => 'impressum_body.tpl') 
); 

$template->pparse('body'); 

include($phpbb_root_path . 'includes/page_tail.'.$phpEx); 
?>
Viele Grüße Maxe

PS: Ich könnte es auch einfach ausprobieren, aber mir wäre es lieber den Code zu verstehen.
Benutzeravatar
Seimon
Mitglied
Beiträge: 893
Registriert: 23.02.2005 18:10
Wohnort: Linz, Österreich

Beitrag von Seimon »

als erstes mal:

Code: Alles auswählen

# 
#-----[ ÖFFNEN ]---------------------------
#
# includes/constants.php
# 
#-----[ FINDE ]-------------------------------------------------
#
define('PAGE_GROUPCP', -11);

# 
#-----[ DARUNTER EINFÜGEN ]---------------------------------------
#
# darauf achten, das Ziffer nicht schon belegt ist

define('PAGE_IMPRESSUM', -44);
statt -44 geht auch jede andere noch nicht verwendete negative zahl


dann:

Code: Alles auswählen

# 
#-----[ ÖFFNEN ]---------------------------
#
# viewonline.php
# 
#-----[ FINDE ]-------------------------------------------------
#
				case PAGE_FAQ:
					$location = $lang['Viewing_FAQ'];
					$location_url = "faq.$phpEx";
					break;
# 
#-----[ DARUNTER EINFÜGEN ]---------------------------------------
#
				case PAGE_IMPRESSUM:
					$location = $lang['Impressum'];
					$location_url = "impressum.$phpEx";
					break;


# 
#-----[ ÖFFNEN ]---------------------------
#
# admin/index.php
# 
#-----[ FINDE (2x) ]-------------------------------------------------
#
						case PAGE_FAQ:
							$location = $lang['Viewing_FAQ'];
							$location_url = "index.$phpEx?pane=right";
							break;
# 
#-----[ jeweils DARUNTER EINFÜGEN ]---------------------------------------
#
                       				case PAGE_IMPRESSUM:
	                        			$location = $lang['Impressum'];
                       					$location_url = "../impressum.$phpEx";
			                        	break;


die variable: $lang['Impressum'] kannst du in den lang-files setzen (musst sie dann im page_header laden), oder einfach stattdessen den namen in den code schreiben.
Also statt $lang['Impressum'], 'Betrachtet das Wiki'


ich hoffe ich hab mich nicht irgendwo vertan - keine gewähr - backup recommended :D
Maxe
Mitglied
Beiträge: 154
Registriert: 15.07.2006 00:17

Beitrag von Maxe »

Wunderbar :)
Das hat mir schon ein ganzes Stück geholfen, aber jetzt wüsste ich noch gern, welche Zeilen ich von dem Code (ersten Post) in mein Wiki einfügen muss damit das klappt.

Da ist ja viel Müll dabei wie Pagetitel usw...

Könntest mir da noch schnell helfen.

Bin übrigens begeistert über deinen super Post und das am Samstag"morgen" ;)

Gruß Maxe
Benutzeravatar
Seimon
Mitglied
Beiträge: 893
Registriert: 23.02.2005 18:10
Wohnort: Linz, Österreich

Beitrag von Seimon »

Diese Zeile:

Code: Alles auswählen

$userdata = session_pagestart($user_ip, PAGE_IMPRESSUM); 
Ich hab überlesen, dass es beim Impressum ja schon klappt und es ums wiki geht - also überall statt PAGE_IMPRESSUM, PAGE_WIKI

Ich vermute damit die Zeile funktioniert benögtigst du ohnehin:

Code: Alles auswählen

define('IN_PHPBB', true); 

$phpbb_root_path = './'; 
include($phpbb_root_path . 'extension.inc'); 
include($phpbb_root_path . 'common.'.$phpEx); 
am besten du gehst von:
http://www.phpbb.de/doku/kb/phpbb_seite
aus

Maxe hat geschrieben:Bin übrigens begeistert über deinen super Post und das am Samstag"morgen" ;)
danke :oops:
Maxe
Mitglied
Beiträge: 154
Registriert: 15.07.2006 00:17

Beitrag von Maxe »

@Seimon:

Ah, die Hilfeseite kannte ich noch nicht. Danke!

Jetzt hab ich den Code eingebaut udn bekomme leider folgende Fehlermeldung:

Code: Alles auswählen

Fatal error: Call to a member function sql_query() on a non-object in /var/www/webX/html/includes/sessions.php on line 134
Der Fehler kommt erst wenn ich die Zeile:

Code: Alles auswählen

$userdata = session_pagestart($user_ip, PAGE_WIKI);
eingefügt hab.

Alleine mit:

Code: Alles auswählen

define('IN_PHPBB', true);
$phpbb_root_path = '../';
include($phpbb_root_path . 'extension.inc');
include($phpbb_root_path . 'common.'.$phpEx);
läuft die Seite ohne Fehler.

Was will mit dir Meldung sagen? Ein Problem mit gleichen Variablennamen?!

Gruß Maxe
Benutzeravatar
Seimon
Mitglied
Beiträge: 893
Registriert: 23.02.2005 18:10
Wohnort: Linz, Österreich

Beitrag von Seimon »

hast du PAGE_WIKI in der constants.php schon definiert?
Maxe
Mitglied
Beiträge: 154
Registriert: 15.07.2006 00:17

Beitrag von Maxe »

Ja, daran liegt es nicht. hab es sicherheitshalber mit einer Konstanten versucht die schon funktioniert.

Mist :( Das lief bis jetzt so gut.

Noch ne Idee?
Benutzeravatar
Seimon
Mitglied
Beiträge: 893
Registriert: 23.02.2005 18:10
Wohnort: Linz, Österreich

Beitrag von Seimon »

komisch...

wenn du nur die seite nimmst:
http://www.phpbb.de/doku/kb/phpbb_seite (ohne /***** Inhaltsbereich ******/ )
kommt dann auch ein fehler?
Maxe
Mitglied
Beiträge: 154
Registriert: 15.07.2006 00:17

Beitrag von Maxe »

Genau dass hatte ich gemacht *g* Und Siehe da, kein fehler.

Jetzt hab ich den Code einfach im Wiki wo anders platziert und was ist - GENAU :) Es geht - Jippie!

Jetzt gibt es nurnoch ein Mini problem, der Link im viewonline.php ist nicht so wie ich ihn eingegeben hab:

Code: Alles auswählen

case PAGE_WIKI:
	$location = $lang['Viewing_Wiki'];
	$location_url = "./wiki/index.php";
	break;
Durch meine htaccess wird er immer umgeschrieben auf *.html

Code: Alles auswählen

RewriteEngine On

# SEO URL [mgutt]
RewriteRule !\.html$ - [L]
RewriteRule ^[a-z0-9-]+-([pt])([0-9]+)\.html$ /viewtopic.php?$1=$2 [L]
RewriteRule ^[a-z0-9-]+-f([0-9]+)\.html$ /viewforum.php?f=$1 [L]
RewriteRule ^[a-z0-9-]+-u([0-9]+)\.html$ /profile.php?mode=viewprofile&u=$1 [L]
RewriteRule ^([a-zA-Z0-9_]+),([^/,]+),([^/,]*)([^/]*\.html)$ $1$4?$2=$3 [QSA,N]
RewriteRule ^[a-z0-9-]+-([pt])([0-9]+),([^/,]+),([^/,]*)([^/]*\.html)$ viewtopic$5?$1=$2&$3=$4 [QSA,N]
RewriteRule ^[a-z0-9-]+-f([0-9]+),([^/,]+),([^/,]*)([^/]*\.html)$ viewforum$4?f=$1&$2=$3 [QSA,N]
RewriteRule ^([a-zA-Z0-9_]+)\.html$ /$1.php [L]
Wie kann ich diese Datei über irgendeine Regel rausnehmen?

Aber der Rest klappt. Danke danke für deine Hilfe.

Gruß Maxe
Benutzeravatar
Seimon
Mitglied
Beiträge: 893
Registriert: 23.02.2005 18:10
Wohnort: Linz, Österreich

Beitrag von Seimon »

in der includes/sessions.php

suchst du:

Code: Alles auswählen

	$seo_forbidden = array(
		'-',
		'login',
		'mode=confirm',
		'mark=topics',
		'view=',
	);
und ersetzt mit

Code: Alles auswählen

	$seo_forbidden = array(
		'-',
		'login',
		'wiki',
		'mode=confirm',
		'mark=topics',
		'view=',
	);
oder so
Antworten

Zurück zu „phpBB 2.0: Administration, Benutzung und Betrieb“