Seite 1 von 1

Externe Seiten mit Login schützen

Verfasst: 24.08.2003 15:05
von Christoph
Hallo,

ich möchte gerne einen Chat für meine Board User anbieten.
Allerdings, hat der Chat nichts im geringsten mit PHPbb zu tun. Die Adresse zum Chat soll dann lauten: http://www.hiphop-pott.de/forum/chat ! Das soll so laufen, dass nur User die im Board eingeloggt sind Zugriff auf die Chatseite haben. Für nicht angemeldete User soll wenn sie die Chat-Seite betreten, das normale Login-Formular erscheinen, welches auch erscheint wenn man als nicht angemeldeter User einen neuen Beitrag schreiben möchte.

Meine Frage ist jetzt, wie schaffe ich das, dass so funktioniert wie ich mir das vorstelle ?

Verfasst: 24.08.2003 15:16
von Mungo
du musst die chatseite ins phpbb integrieren...
schau dir den topic mal an:
http://www.phpbb.de/viewtopic.php?t=15330
und dann nach:

Code: Alles auswählen

init_userprefs($userdata);
noch folgendes einfügen:

Code: Alles auswählen

//
// Start auth check
//
if ( !$userdata['session_logged_in'] )
{
  $header_location = ( @preg_match('/Microsoft/WebSTAR/Xitami/', getenv('SERVER_SOFTWARE'))) ?'Refresh: 0; URL=' : 'Location: ';
  header($header_location . append_sid("login.$phpEx?redirect=chat.php"));
  exit;
}
//
// End of auth check
//
ACHTUNG: den redirect anpassen!!!

Verfasst: 24.08.2003 15:24
von Dennis63
/templates/*/chat.tpl <- Das muss der Chat sein.
/forum/chat.php <- In die Datei unteres eintragen

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_INDEX);
init_userprefs($userdata);
if ( $userdata['session_logged_in'] )
	{
	$page_title = $lang['Chatroom'];
	include($phpbb_root_path . 'includes/page_header.'.$phpEx);
	$template->set_filenames(array('body' => 'chatroom_body.tpl'));
	$template->pparse('body');
	include($phpbb_root_path . 'includes/page_tail.'.$phpEx);
	}
else
	{
	$redirect = 'chat.php';
	Header("Location: login.php");
	}
?>
Grüße
Dennis

Verfasst: 25.08.2005 16:01
von Phoenix78334
Wie muss ich den Code verändern, damit jeder darauf zugreifen kann?

Verfasst: 25.08.2005 17:20
von smaugilein
Einfach verlinken - ohne phpBB-Einbindung! :)

Verfasst: 25.08.2005 17:22
von Phoenix78334
Schon, aber ich möchte auch das der Header vom Forum usw. includet ist

Verfasst: 25.08.2005 17:26
von smaugilein

Code: Alles auswählen

<?php
define('IN_PHPBB', true); 

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

$userdata = session_pagestart($user_ip, PAGE_IMPRESSUM); // PAGE_IMPRESSUM ist so zu ändern, wie man's gerne haben möchte - weiteres in der Doku
init_userprefs($userdata); 

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

// DEINE DATEI

include($phpbb_root_path . 'includes/page_tail.'.$phpEx); 
?>
Ganz einfach! :)

P.S.: Die Sachen mit dem $userdata sind nur dafür, wenn man z.B. den Benutzernamen des Users, der die Seite aufruft, rausfinden möchte...

Verfasst: 25.08.2005 17:42
von Phoenix78334
Jau Danke! Klappt wunderbar ;)

Verfasst: 25.08.2005 18:30
von smaugilein
Hehe, gern geschehen! :)