if else abfrage der session id

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.
Crossgolfer
Mitglied
Beiträge: 57
Registriert: 08.10.2004 11:14
Kontaktdaten:

if else abfrage der session id

Beitrag von Crossgolfer »

nabend zusammen :)

wie schreibe ich eine if else abfrage:

if : session id nicht vorhanden print : "login" link to loginseite
else : session id vorhanden print : "logout" link to logout aus dem forum

bin leider nicht so der php freak und bräuchte daher die hilfe :)

wäre nett wenn sich jmd erbarmt :)
Lord_Femto
Mitglied
Beiträge: 701
Registriert: 19.12.2003 15:53
Wohnort: Berlin

Beitrag von Lord_Femto »

hi crossgolfer

du kannst das sehr gut in der page_header.php datei im includes verzeichnis sehen.

Code: Alles auswählen

//
// Generate logged in/logged out status
//
if ( $userdata['session_logged_in'] )
{
	$u_login_logout = 'login.'.$phpEx.'?logout=true&sid=' . $userdata['session_id'];
	$l_login_logout = $lang['Logout'] . ' [ ' . $userdata['username'] . ' ]';
}
else
{
	$u_login_logout = 'login.'.$phpEx;
	$l_login_logout = $lang['Login'];
}
Gruß Lord_Femto
visit - http://www.pandemicbrew.de
Project X
Crossgolfer
Mitglied
Beiträge: 57
Registriert: 08.10.2004 11:14
Kontaktdaten:

Beitrag von Crossgolfer »

ja aber meine frage ist ja wie kann ich das php mässig abfragen ob eine session id vorhanden ist und daraus dann machen das er entweder login oder logout schreibt ?
Lord_Femto
Mitglied
Beiträge: 701
Registriert: 19.12.2003 15:53
Wohnort: Berlin

Beitrag von Lord_Femto »

hi

die frage wird auch in der session.php beantwortet:

Code: Alles auswählen

if ( !empty($session_id) )
{
  echo 'Logout';
}
else
{
  echo 'Login';
}
Wenn du jetzt natürlich mit templates arbeitest, dann musst du den bedingungen jeweils ne variable zuweisen und diese dann in der template abfrage einbinden.
Gruß Lord_Femto
visit - http://www.pandemicbrew.de
Project X
Crossgolfer
Mitglied
Beiträge: 57
Registriert: 08.10.2004 11:14
Kontaktdaten:

Beitrag von Crossgolfer »

danke ersteinmal für deine antworten.

ich verzweifel nämlich schon fast :) seit drei wochen versuche ich hier im board eine antwort auf eine frage zu bekommen die mit der jetzt zu tun hat.

zum problem:
um es einacher zu machen schau mal bitte
www.crossgolfforum.de
www.crossgolfforum.de/cgprob.jpg

so sind die frames aufgeteilt.
in dem linken ist die navi die nromal in der overall_header.tpl ist.
da möchte ich jetzt einen inframe setzen, der eine php datei aufruft in welcher die foren navigation steht. mit der gleichen funktionsweise als wenn sie ganz normal im header.tpl wäre.

deswegen diese abfrage ob eine session id vorhanden ist. anderst kann ich mir das nämlich nicht vorstellen wie man das umsetzen könnte :)

danke schon/ und nochmal :)
Benutzeravatar
Blutgerinsel
Mitglied
Beiträge: 1801
Registriert: 19.07.2004 18:53
Wohnort: Landkreis Ulm
Kontaktdaten:

Beitrag von Blutgerinsel »

Dir ist dann hoffentlich klar das du das PHPBB in Frames umsetzen musst......
Die Session wird bei PHPBB wie könnte es auch anders sein im Header gestartet so dass keine Ausgabe ein Headersenden auslösen kann.....

Du darfst nun das ganze auf Frames umbauen......
Zu dem Thema Frames sage ich jetzt nichts.......
Crossgolfer
Mitglied
Beiträge: 57
Registriert: 08.10.2004 11:14
Kontaktdaten:

Beitrag von Crossgolfer »

Blutgerinsel hat geschrieben:Dir ist dann hoffentlich klar das du das PHPBB in Frames umsetzen musst......
nein ist mir nicht klar und ich weiss auch nicht was du damit meinst
Die Session wird bei PHPBB wie könnte es auch anders sein im Header gestartet so dass keine Ausgabe ein Headersenden auslösen kann.....
damit weiss ich auch nicht was du meinst.
Du darfst nun das ganze auf Frames umbauen......
was ? die page ? habe ich doch.
Zu dem Thema Frames sage ich jetzt nichts.......
danke :) denn die meinung über frames der leute aus diesem bord kenne ich :) und darum geht es mir auch garnicht, für mich ist da so einfach der optimale lösungsweg der hier aber nicht gegenstand der diskussione und dieses threads sein soll.
last nick : namenloserposter
Benutzeravatar
Blutgerinsel
Mitglied
Beiträge: 1801
Registriert: 19.07.2004 18:53
Wohnort: Landkreis Ulm
Kontaktdaten:

Beitrag von Blutgerinsel »

Das PHPBB besteht aus einer Anzahl an Tabellenverschachtelungen und dadurch das es getrennt in Header, Datebereich und Footer ist und du dieses in Frames haben willst....

Musst du dieses Table Layout entsprechend in die Frames umlagern und dafür sorgen das ein Klick in der Navi u.A. das Frame X aktualisiert....

Eine Session bzw. auch Header kann nur einmal übertragen werden demzufolge kannst du die Session bzw. Header nicht 2 mal gestartet bzw. gesendet werden. Wenn du das Board in die PAge integrierst hast du bereits durch die Page die Headerfile gesendet demzufolge wurde der HTTP Header schon gesendet...Dann dann aber die Session des Boardes im Header gestartet wurde wird todsicher die Fehlermeldung Header already sent erscheinen.......
Crossgolfer
Mitglied
Beiträge: 57
Registriert: 08.10.2004 11:14
Kontaktdaten:

Beitrag von Crossgolfer »

Blutgerinsel hat geschrieben:Das PHPBB besteht aus einer Anzahl an Tabellenverschachtelungen und dadurch das es getrennt in Header, Datebereich und Footer ist und du dieses in Frames haben willst....
ich will ja garnicht das borad in frames zerlegen. das board bleibt aus seinen drei elementen bestehen. ich habe nur die links wie profil login messages mebers usw aus dem overall_header.tpl rausgeholt.
und diese sollen jetzt in dem frame 3 (navi) erscheinen. Es soll so aussehen wie jetzt nur fehlt mir halt noch die funktion das aus dem login (welcher funktioniert) aus dem login ein logout wird wie hier ja auch in dem.forum oben in der navi. und dafür wollte ich die if else sid abfrage machen!
Musst du dieses Table Layout entsprechend in die Frames umlagern und dafür sorgen das ein Klick in der Navi u.A. das Frame X aktualisiert....

Eine Session bzw. auch Header kann nur einmal übertragen werden demzufolge kannst du die Session bzw. Header nicht 2 mal gestartet bzw. gesendet werden. Wenn du das Board in die PAge integrierst hast du bereits durch die Page die Headerfile gesendet demzufolge wurde der HTTP Header schon gesendet...Dann dann aber die Session des Boardes im Header gestartet wurde wird todsicher die Fehlermeldung Header already sent erscheinen.......
ich glaube hier haben wir uns missverstanden, da ich ja nicht das board selber in 3 frames aufteilen will[/url][/quote]
last nick : namenloserposter
Lord_Femto
Mitglied
Beiträge: 701
Registriert: 19.12.2003 15:53
Wohnort: Berlin

Beitrag von Lord_Femto »

hi

hier muss ich aber mal dem blutigen gerinsel recht geben. du benutzt eindeutig frames. das sieht man. phpbb nutzt keine frames. vorteile und nachteile hin oder her, frames unterbrechen aber einfach die session. außerdem habe ich dir schon den code geliefert (siehe ersten post)

das problem sind einfach mal die frames. du könntest, wenn du es so haben willst, wie bei phpbb. die inhalte, die du jetzt in den frames hast, jeweils in eine extra spalte einer tabelle hauen.

z.b.

Code: Alles auswählen

<table>
  <tr>
    <td><img.......></td>
  <tr>
  <tr>
    <td>der ganze linke inhalt</td>
    <td>der ganze rechte bzw. mittlere inhalt</td>
  </tr>
</table>
Gruß Lord_Femto
visit - http://www.pandemicbrew.de
Project X
Antworten

Zurück zu „Coding & Technik“