Seite 5 von 5

Verfasst: 03.06.2006 18:39
von mtsluft
Hallo,

danke schonmal!
Also wenn man nun im Forum eingeloggt ist
TESTZUGANG:
username: cinestar
pass: 102030

Und dann auf meine Startseite zurückgeht bekommt man in gelber Schirft "Hallo cinestar, willkommen auf..." angezeigt.

Nun möchte ich daneben noch einen kleinen Link "ausloggen", damit man sich dierekt von der Seite aus ausloggen kann. Ist nehm ich an nicht schwer, vielleicht kann mir einer kurz nen code sagen

T H X

Verfasst: 06.06.2006 07:19
von StarWolf3000
Logout-Link:

Code: Alles auswählen

<a href="forum_pfad/<?=append_sid("login.$phpEx?logout=true&redirect=../");?>">Logout</a>
mehr nicht ;)

Verfasst: 06.06.2006 09:14
von mtsluft
Hallo,

wenn ich mich jetzt von meiner externen seite ausloggen will, kommt das forum und bringt diesen fehler:
Invalid_session
Und nochwas: Der Link "Logout" wird sowohl wenn man eingeloggt, als auch wenn man nicht eingeloggt ist angezeigt...

Verfasst: 06.06.2006 13:03
von StarWolf3000
zu diesem Problem gibt es in der Knowledge Base Hilfe:
Knowledge Base - Was tun bei Fehlermeldung "Invalid Session"?

2. Problem:

Code: Alles auswählen

FINDE:
<a href="forum_pfad/<?=append_sid("login.$phpEx?logout=true&redirect=../");?>">Logout</a>

ERSETZE DURCH:
<?
if($userdata['session_logged_in'])
{
?>
<a href="forum_pfad/<?=append_sid("login.$phpEx?logout=true&redirect=../");?>">Logout</a>
<?
}
?>

Verfasst: 06.06.2006 13:36
von mtsluft
Hallo,

Invalid_session

bleibt, aber "Logout" wird schonma nur noch angezeigt wenn man auch eigeloggt ist... Ich werd mich ma bei deinem o.g. link schlau machen...
thx soweit

Verfasst: 06.06.2006 17:21
von Mavo460
Moin!

Ich kann zwar hierbei nicht weiterhelfen aber habe fast das gleiche vor:

Ich habe nen header in dem was dargestellt werden soll. Das habe ich mit folgendem Code erstmal realisiert und in einer datei namens test3.php gespeichert. Die datei liegt im phpBB2 ordner:

Code: Alles auswählen

<? 
define('IN_PHPBB', true); 
$phpbb_root_path = './'; 
include_once($phpbb_root_path . 'extension.inc'); 
include_once($phpbb_root_path . 'common.'.$phpEx); 

// 
// Start session management 
// 
$userdata = session_pagestart($user_ip, PAGE_INDEX); 
init_userprefs($userdata); 
// 
// End session management 
// 



if ( $userdata['session_logged_in'] ) 
{ 
      echo "Der User $userdata[username] mit der User-ID $userdata[user_id] ist eingeloggt"; 
} 
else 
{ 
      echo "Der user ist AUSGELOGGT !"; 
} 
?>
das selbst funktioniert ordnungsgemäß. Ich wollte jetzt diese datei in einer anderen includen wenn der User eingeloggt ist. Dafür nutze ich folgenden Code:

Code: Alles auswählen

<?php
error_reporting (E_ALL ^ E_NOTICE);
// Daten auslesen zur überprüfung ob User eingeloggt oder nicht Start

//Benötigte Dateien und Variablen von phpBB 
define('IN_PHPBB', true); 
$c=$_SERVER['DOCUMENT_ROOT'];
$phpbb_root_path = $c . 'phpBB2/';
include_once($phpbb_root_path . 'extension.inc'); 
include_once($phpbb_root_path . 'common.php');
$a=$phpbb_root_path . 'common.php';
$b=$c . 'phpBB2/';


?>

<html>
<head>
</head>
<body>
<table width="780" border="0" cellpadding="0" cellspacing="0" align="center">
  <tr> 
    <td colspan="2"> 
      <?php 
      if ( $userdata['session_logged_in'] ) 
      { 
      echo "eingeloggt";
      include ("test3.php");
      } 
      else 
      {
      echo "ausgeloggt";
      } 
      ?>
    </td>
  </tr>
  <tr> 
    <td width="135" align="center" VALIGN="TOP" bgcolor="#FCFCFC"> 
      <?php include ("menu2.php"); ?>
      <br>
    </td>
    <td width="645" valign="top" bgcolor="#FCFCFC"> 
da bekomm ich allerdings immer nur "ausgeloggt" angezeigt. Das heisst meiner meinung nach das das script erkennt das ich eingeloggt bin. Die datei test3.php während dessen gibt mir noch immer an das ich eingeloggt bin.

Kann das mit dem include was zu tun haben? Ich bastel schon seit gestern nachmittag dran rum aber komme zu keinem richtigen ergebnis.

Über nen hinweis wäre ích dankbar :)

MfG Mavo460

Verfasst: 06.06.2006 17:24
von fanrpg
Die Session-ID muss auch beim Aussloggen angehangen werden :cry: