Sessionvariablen?

Fragen zu allen Themen rund ums Programmieren außerhalb von phpBB können hier gestellt werden - auch zu anderen Programmiersprachen oder Software wie Webservern und Editoren.
Jojoponn139
Mitglied
Beiträge: 133
Registriert: 05.08.2006 01:20
Wohnort: Berlin
Kontaktdaten:

Sessionvariablen?

Beitrag von Jojoponn139 »

Tach -,,

ich hab eine neue Seite in phpBB erstellt. Session und so wird alles normal initialisiert.

Aber mit der gewohnten Methode

Code: Alles auswählen

$_SESSION["var1"] = $var1;
kann ich keine Variable in der Session festlegen // oder diese zumindest per

Code: Alles auswählen

$var1 = $_SESSION["var1"];
nicht abrufen --- kann mir da jemand helfen?
Jojoponn139
phpBB-de.org
Benutzeravatar
Olli Oberhausen
Mitglied
Beiträge: 561
Registriert: 22.10.2004 01:03
Wohnort: Oberhausen NRW
Kontaktdaten:

Beitrag von Olli Oberhausen »

Versuchs mal mit session_start(); vor der deklarierung von sessionvariablen.

Olli
Neulich im Zoo: Papa, guck mal, da sind Linuxe...
KB-Suche :: db_update_generator :: phpMyAdmin
Winmerge :: Zend Studio
Benutzeravatar
Ambience
Mitglied
Beiträge: 628
Registriert: 02.09.2006 11:28
Wohnort: daheim
Kontaktdaten:

Beitrag von Ambience »

session_start(); muss gleich nach <?php kommen, bevor anderer code kommt.
Benutzeravatar
Olli Oberhausen
Mitglied
Beiträge: 561
Registriert: 22.10.2004 01:03
Wohnort: Oberhausen NRW
Kontaktdaten:

Beitrag von Olli Oberhausen »

Eigentlich muss das nur ausgeführt werden, bevor irgendein header gesendet wird, aber ganz oben ist mit Sicherheit nicht schlecht...

Wie es sich jedoch mit gzip versteht, kann ich nicht sagen.

Olli
Neulich im Zoo: Papa, guck mal, da sind Linuxe...
KB-Suche :: db_update_generator :: phpMyAdmin
Winmerge :: Zend Studio
Jojoponn139
Mitglied
Beiträge: 133
Registriert: 05.08.2006 01:20
Wohnort: Berlin
Kontaktdaten:

Beitrag von Jojoponn139 »

Ich hab doch oben geschrieben "Session und so wird alles normal initialisiert"

-->> Zumindest, wenn ich mich nicht täusche, wird ja bereits eine Session von PHPBB2 initialisiert :::

PS.: selbst wenn ich das session_start(); dazuschreibe, kann die Variable nicht gespeichert werden.
Jojoponn139
phpBB-de.org
Benutzeravatar
Olli Oberhausen
Mitglied
Beiträge: 561
Registriert: 22.10.2004 01:03
Wohnort: Oberhausen NRW
Kontaktdaten:

Beitrag von Olli Oberhausen »

phpBB hat ein eigene session verwaltung über die Datenbank....

Welche php version nutzt du?
Versuchs mal mit $HTTP_SESSION_VARS

Olli
Neulich im Zoo: Papa, guck mal, da sind Linuxe...
KB-Suche :: db_update_generator :: phpMyAdmin
Winmerge :: Zend Studio
Jojoponn139
Mitglied
Beiträge: 133
Registriert: 05.08.2006 01:20
Wohnort: Berlin
Kontaktdaten:

Beitrag von Jojoponn139 »

Mit der PHP-Version sollte es keine Probleme geben (PHP5.2)

- die veraltete Methode funzt auch nicht.
Jojoponn139
phpBB-de.org
Benutzeravatar
Ambience
Mitglied
Beiträge: 628
Registriert: 02.09.2006 11:28
Wohnort: daheim
Kontaktdaten:

Beitrag von Ambience »

bindest du irgendwelche dateien von phpbb ein, in deine? wenn ja, dann welche`?

bzw.

solltest du die common includen.

eine session kannst du dann wie folgt erstellen:

Code: Alles auswählen

<?php
session_start();
$_SESSION['username'] = 'lol';

echo $HTTP_SESSION_VARS['username'];
?>
selbst wenn in der ini die register long arrays auf off sind, werden trotzdem diese "veralteten" variablen erzeugt die du dann im laufenden code gebrauchen kannst.
Jojoponn139
Mitglied
Beiträge: 133
Registriert: 05.08.2006 01:20
Wohnort: Berlin
Kontaktdaten:

Beitrag von Jojoponn139 »

Das ist die datei "datei.php"

Code: Alles auswählen

// standard hack prevent 
define('IN_PHPBB', true); 
$phpbb_root_path = './'; 
include($phpbb_root_path . 'extension.inc'); 
include($phpbb_root_path . 'common.'.$phpEx); 

// standard session management 
$userdata = session_pagestart($user_ip, PAGE_DATEI); 
init_userprefs($userdata); 

// set page title 
$page_title = 'Titel'; 

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

// assign template 
$template->set_filenames(array( 
        'datei' => 'datei.tpl'
        ) 
); 
include("funktionen.php");
$template->pparse('datei');

// standard page footer 
include($phpbb_root_path . 'includes/page_tail.'.$phpEx); 

in der per Include eingebundenen Datei funktionen.php möchte ich nun eine Sessionvariable speichern, die später halt wieder aufgerufen wird... wird.

PS: Deine Variante funzt auch net...
Jojoponn139
phpBB-de.org
Benutzeravatar
gn#36
Ehrenadmin
Beiträge: 9313
Registriert: 01.10.2006 16:20
Wohnort: Ganz in der Nähe...
Kontaktdaten:

Beitrag von gn#36 »

Es reicht nicht, das Starten der Session in der eingebundenen Datei zu machen, denn es muss vor jedweder Ausgabe passieren. Das ist aber hier nicht der Fall, ganz im Gegenteil: Mit dem Page Header hast du bereits eine ganze Menge ausgegeben.
Begegnungen mit dem Chaos sind fast unvermeidlich, Aber nicht katastrophal, solange man den Durchblick behält.
Übertreiben sollte man's im Forum aber nicht mit dem Chaos, denn da sollen ja andere durchblicken und nicht nur man selbst.
Antworten

Zurück zu „Coding & Technik“