Seite 1 von 1

Benutzerdaten (eingeloggt) weiterverwenden: Problem

Verfasst: 18.03.2005 17:49
von sam6666
Hallo,

mein Forum läuft soweit ohne Probleme. Nun möchte ich gerne die Benutzerdaten aus dem Forum weiterverarbeiten, so möchte ich es hinbiegen, dass nur eingeloggt Benutzer in meinen News Kommentare schreiben dürfen usw.
Dazu brauche ich logischerweise aus dem Forum, den Status des User, also ist eingeloggt mit Benutzernamen: xyz oder auch nicht.

Dazu habe ich schon etwas passendes gefunden und so kann ich mit dem kurzen Php-Skript auch alles auslesen was ich brauche. Die Datei habe ich ich Forum-Ordner mir liegen.

Wenn ich aber jetzt versuche die Datei irgendwo zu includen, dann bekomme ich Fehler:

Code: Alles auswählen

Warning: main(): Unable to access ./extension.inc in /home/www/web393/html/forum/status.php on line 5

Warning: main(./extension.inc): failed to open stream: No such file or directory in /home/www/web393/html/forum/status.php on line 5

Warning: main(): Failed opening './extension.inc' for inclusion (include_path='.:/usr/share/php') in /home/www/web393/html/forum/status.php on line 5

Warning: main(): Unable to access ./common. in /home/www/web393/html/forum/status.php on line 6

Warning: main(./common.): failed to open stream: No such file or directory in /home/www/web393/html/forum/status.php on line 6

Warning: main(): Failed opening './common.' for inclusion (include_path='.:/usr/share/php') in /home/www/web393/html/forum/status.php on line 6

Fatal error: Call to undefined function: session_pagestart() in /home/www/web393/html/forum/status.php on line 10
Woran liegt das? Rufe ich das Skript direkt auf, dann funktioniert es!

Hier vorsichthalber noch der Code:

Code: Alles auswählen

<?php
//Benötigte Dateien und Variablen von phpBB
define('IN_PHPBB', true);
$phpbb_root_path = './';
include($phpbb_root_path . 'extension.inc');
include($phpbb_root_path . 'common.'.$phpEx);


//Session auslesen und Benutzer-Informationen laden
$userdata = session_pagestart($user_ip, PAGE_INDEX);
init_userprefs($userdata);


if ( $userdata['session_logged_in'] )
{
    echo "<b>Du bist angemeldet mit:</b><br>";
    echo $userdata[2];
}
else
{
    echo "<b>Noch nicht angemeldet:</b><br>Du kannst keine Kommentare schreiben und nicht im Forum posten.";
}
if ( $userdata['user_level'] == ADMIN ){
echo " (Admininistrator)";
}
if ( $userdata['user_level'] == MOD ){
echo " (Moderator)";
}

?>
Wäre schön, wenn mir jemand helfen könnte. Was mache ich falsch?
Wie kann ich die Daten sonst weiterverwenden?

Gruß.

Verfasst: 18.03.2005 18:11
von naderman
Hallo,

in welchem Verzeichnis sind deine phpBB Dateien? Wenn sie in einem Unterverzeichnis namens "phpBB2" sind, müsste es

Code: Alles auswählen

$phpbb_root_path = 'phpBB2/';
heißen. Wenn du die Dateien woanders hast, musst du das Verzeichnis entsprechend anpassen. './' bedeutet, dass die Dateien im selben Verzeichnis wie deine Datei sind.

naderman

Verfasst: 19.03.2005 03:11
von sam6666
wäre schön, wenn es so einfach wäre.
die Dateien liegen in einem Ordner namens forum. Das Skript-Datei habe ich da aber direkt mit reingelegt, so dass der Pfas ./ so schon stimmt.
Wenn ich es nicht include, sondern die Seite so direkt aufrufe, dann funktioniert es ja auch einwandfrei.

Noch jemand eine Idee?

Vielen Dank für eure Hilfe!

Verfasst: 19.03.2005 03:51
von tas2580
Mach mal $phpbb_root_path =... ausgegangen von der Adresse in der du die Datei einbinden willst.

Verfasst: 19.03.2005 11:29
von sam6666
Danke für den Tipp, das funktioniert damit auch schon etwas besser. Zumindest wird das richtige angezeigt. Allerdings bekomm ich dann auch immer 2 Warnings:

Code: Alles auswählen

Warning: Cannot modify header information - headers already sent by (output started at /home/www/web393/html/news/parse/parser.php:307) in /home/www/web393/html/forum/includes/sessions.php on line 188

Warning: Cannot modify header information - headers already sent by (output started at /home/www/web393/html/news/parse/parser.php:307) in /home/www/web393/html/forum/includes/sessions.php on line 189
Woran könnte das noch liegen. Wie werde ich die los?

Verfasst: 19.03.2005 12:00
von sam6666
Hast sich erledigt. Trotzdem nochmal Danke!

Verfasst: 07.01.2007 01:53
von Datenkralle
Hast sich erledigt. Trotzdem nochmal Danke!
Bitte schreib mal wie du es gelößt hast.
Ich habe nämlich das selbe Problem und bei mir tauchen diese Fehlermeldungen auf:

Code: Alles auswählen

Warning: Cannot modify header information - headers already sent by (output started at /home/www/web393/html/news/parse/parser.php:307) in /home/www/web393/html/forum/includes/sessions.php on line 188

Warning: Cannot modify header information - headers already sent by (output started at /home/www/web393/html/news/parse/parser.php:307) in /home/www/web393/html/forum/includes/sessions.php on line 189

Verfasst: 07.01.2007 12:25
von nickvergessen
Datenkralle hat geschrieben:
Hast sich erledigt. Trotzdem nochmal Danke!
Bitte schreib mal wie du es gelößt hast.
Ich habe nämlich das selbe Problem und bei mir tauchen diese Fehlermeldungen auf:

Code: Alles auswählen

Warning: Cannot modify header information - headers already sent by (output started at /home/www/web393/html/news/parse/parser.php:307) in /home/www/web393/html/forum/includes/sessions.php on line 188

Warning: Cannot modify header information - headers already sent by (output started at /home/www/web393/html/news/parse/parser.php:307) in /home/www/web393/html/forum/includes/sessions.php on line 189
2 Anmerkungen:
1. glaube ich nicht, dass der User, der vor 2Jahren mal 4Posts gemacht hat hier nochmal rein schaut.
2. liegt die Lösung in der KnowledgeBase vor:
KB:84

Verfasst: 10.01.2007 20:25
von Datenkralle
Vielen Dank für deine Antwort.
Ich hatte schon Angst das keiner auf meinen Beitrag antwortet und die Lösung ist ziemlich einfach. Man muss den PHP-Code vor den HTML-Tag schreiben. :D

Danke