Ankündigung

Einklappen
Keine Ankündigung bisher.

Problem mit Session

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Gast-Avatar
    Ein Gast erstellte das Thema Problem mit Session.

    Problem mit Session

    index.php:
    session_start();
    //Ist Sprache gewählt? sonst Englisch
    if (true==isset($_SESSION)) echo "Session gesetzt!"; //Nur zum Test
    if (false==isset($_SESSION)) {
    $_SESSION["lng"]= "eng";
    }
    echo $_SESSION["lng"]; //Nur zum Test

    if ("ger"==$_SESSION["lng"]) {
    echo "[img]./images/banner_usa.gif[/img]";
    } else {
    echo "[img]./images/banner_ger.gif[/img]";
    }


    lng_change.php:
    session_start();
    echo session_id();
    if ($_SESSION["lng"]=="ger") {
    $_SESSION["lng"]="eng";
    } else {
    $_SESSION["lng"]="ger";
    }
    echo "<a href=\"index.php\">ZURUCK</a>";


    Wenn ich von lng_change.php auf "ZURUCK" klicke und ich wieder zum index.php gelange wird NIEMALS "Session gesetzt!" ausgegeben, immer nur "eng"!!

  • Gast-Avatar
    Ein Gast antwortete
    dann is ja alles klar...

    Einen Kommentar schreiben:


  • Gast-Avatar
    Ein Gast antwortete
    Zitat von apo
    Ich nutze PHP Ver. 4.0.2, ist das ein Problem?
    Ja. Diese steinalte und kaputte Version will man selbst unter Zwang nicht mehr haben. Außerdem gibt es $_SESSION erst seit PHP 4.1.0

    Einen Kommentar schreiben:


  • Gast-Avatar
    Ein Gast antwortete
    Ich nutze PHP Ver. 4.0.2, ist das ein Problem? Aktuell is ja 4.3, wurden viele bugfixes gemacht?

    Einen Kommentar schreiben:


  • Gast-Avatar
    Ein Gast antwortete
    Re: auch Output-Probleme

    Zitat von Sonja
    session_start();
    $_SESSION['veran_erfassen']=$_POST; # 1. Formular
    ...
    session_start();
    $_SESSION['page1']=$_POST; # 2. Formular

    und dann mchate ich ein Echo
    echo $_SESSION['page1'];

    Das Resultat lautet
    Array
    Da $_POST ein Array ist, ist nach der Zuweisung $_SESSION['page1'] und $_SESSION['veran_erfassen'] ebenfalls ein Array.

    Beispiel:
    $_SESSION['page1']['var1'] entspricht $_POST['var1'] aus dem 2. Formular

    $_SESSION['veran_erfassen']['irgendwas'] entspricht $_POST['irgendwas'] aus dem 1. Formular

    Alles klar?

    Einen Kommentar schreiben:


  • Gast-Avatar
    Ein Gast antwortete
    Zitat von apo
    nur im script habe ich überall $_SESSION durch $HTTP_SESSION_VARS ersetzt! Warum geht das so, kann mir da mal bitte jemand den Unterschied erklären?!?
    ältere PHP-Version

    Einen Kommentar schreiben:


  • Sonja
    antwortet
    auch Output-Probleme

    Möchte gleiches machen, was mache ich falsch?

    Page 1 ist ein Form diese beginnt mit
    session_start();
    $_SESSION['veran_erfassen']=$_POST;

    Der Input des Form geht zu
    <form action='page2.php' method='POST'>


    Auf der Page 2 wollte ich die Session mal aufgeben, nur so zum Test um zu sehen, was da drin ist. Die Seite beginnt wieder mit

    session_start();
    $_SESSION['page1']=$_POST;


    und dann mchate ich ein Echo

    echo $_SESSION['page1'];



    Das Resultat lautet
    Array

    Nun, wo sind die Daten der Sission und wie kann ich diese anschauen?

    Danke

    Einen Kommentar schreiben:


  • Gast-Avatar
    Ein Gast antwortete
    Jetzt funzt es!
    Ich habe nichts an der php.ini geändert!
    nur im script habe ich überall $_SESSION durch $HTTP_SESSION_VARS ersetzt! Warum geht das so, kann mir da mal bitte jemand den Unterschied erklären?!?

    Einen Kommentar schreiben:


  • Gast-Avatar
    Ein Gast antwortete
    Zitat von DutziMan
    Normalerweise wird doch
    Code:
    session.name=session.id
    automatisch angehängt
    Ist bei mir jedenfalls so.
    Nur passiert nur dann, wenn session.use_trans_sid = 1 und der Client keinen Keks haben wollte.

    Einen Kommentar schreiben:


  • DutziMan
    antwortet
    Normalerweise wird doch
    Code:
    session.name=session.id
    automatisch angehängt

    Ist bei mir jedenfalls so.

    Einen Kommentar schreiben:


  • Gast-Avatar
    Ein Gast antwortete
    Zitat von apo
    phpinfo() gibt mir das unter sessions aus, cookies sind doch aktiviert...
    Freilich, aber das ist falsch:

    Code:
    session.cookie_path  C:/PHP C:/PHP
    Zitat von PHP Handbuch
    Der Pfad zu dem Server, auf welchem das Cookie verfügbar sein wird.

    Ist er auf '/' gesetzt, wird das Cookie innerhalb der gesamten Domain verfügbar. Ist er auf '/foo/' gesetzt, wird das Cookie nur innerhalb des Verzeichnisses /foo/ der domain, sowie allen Unterverzeichnissen wie z.B. /foo/bar/ verfügbar. Der Standardwert ist das Verzeichnis, in dem das Cookie gesetzt wurde.

    Einen Kommentar schreiben:


  • Gast-Avatar
    Ein Gast antwortete
    phpinfo() gibt mir das unter sessions aus, cookies sind doch aktiviert...

    Session Support enabled

    Directive Local Value Master Value
    session.auto_start
    Off Off
    session.cache_expire
    180 180
    session.cache_limiter
    nocache nocache
    session.cookie_domain
    no value no value
    session.cookie_lifetime
    0 0
    session.cookie_path
    C:/PHP C:/PHP
    session.cookie_secure
    Off Off
    session.entropy_file
    no value no value
    session.entropy_length
    0 0
    session.gc_maxlifetime
    1440 1440
    session.gc_probability
    1 1
    session.name
    PHPSESSID PHPSESSID
    session.referer_check
    no value no value
    session.save_handler
    files files
    session.save_path
    C:/PHP C:/PHP
    session.serialize_handler
    php php
    session.use_cookies
    On On

    Einen Kommentar schreiben:


  • Gast-Avatar
    Ein Gast antwortete
    Re: Problem mit Session

    Zitat von apo
    Wenn ich von lng_change.php auf "ZURUCK" klicke und ich wieder zum index.php gelange wird NIEMALS "Session gesetzt!" ausgegeben, immer nur "eng"!!
    Ich vermisse in dem Link die Weitergabe von session_name und session_id für den Fall, daß der Client keinen Keks haben wollte.

    Einen Kommentar schreiben:

Lädt...
X