Session hat den Wert null obwohl gesetzt

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Session hat den Wert null obwohl gesetzt

    Hallo,
    habe mal wieder ein Fehler komme aber nicht drauf.

    Erstmal der Code:

    login.php:
    PHP Code:
    $tpl->exit_error_message("Das eingegebene Password oder der Benutzername ist ungültig.");
    header("Location: http://compgame.pytalhost.de/?s=login");
    exit; 
    funktionen:

    Session wird gesetzt:
    PHP Code:
        function exit_error_message ($msg) {
            
    $_SESSION["error_message"] = "Fehlgeschlagen!";
            if(
    $msg != "") {
                
    $_SESSION["error_message"] = $msg;
                return 
    true;
            }
            else {
                
    $this->error_handler(NOERRORMESSAGE"Es wurde keine Error Message gesetzt ON: " $_SERVER['DOCUMENT_ROOT'] . $_SERVER['REQUEST_URI']);
                
    $_SESSION["error_message"] = "Fehlgeschlagen!";
                return 
    true;
            }
            return 
    false;
        } 
    Wird in dem header aufgerufen
    PHP Code:
        function get_message () {
            if(isset(
    $_SESSION["error_message"])) {
                
    $msg htmlspecialchars(trim($_SESSION["error_message"]));
                
    //unset($_SESSION["error_message"]);
                
    return "<div class='error_box'>" $msg "</div>";
            } elseif(isset(
    $_SESSION["right_message"])) {
                
    $msg htmlspecialchars(trim($_SESSION["right_message"]));
                
    //unset($_SESSION["right_message"]);
                
    return "<div class='right_box'>" $msg "</div>";
            } else {
                return 
    "";
            }
        } 
    Mein Problem:
    Ich gebe die Session aus doch es steht immer 0 egal was ich mache.
    Habe auch mal den header weggelassen aber trotzdem kommt immer 0.

    Wo liegt der Fehler?
    Was kann ich tun

    danke im voraus

    mfg Marco

  • #2
    Warum sehe ich kein session_start()?
    Wir werden alle sterben

    Comment


    • #3
      steht in der index.php
      wird geincludet

      Comment


      • #4
        Originally posted by Marcoru View Post
        PHP Code:
            function get_message () {
                    ...
                    return 
        "<div class='right_box'>" $msg "</div>";
                } else {
                    return 
        "";
                }
            } 
        Mein Problem:
        Ich gebe die Session aus doch es steht immer 0 egal was ich mache.
        Eventuell PHP und JavaScript durcheinander gebracht?

        PHP Code:
        $msg "Testausgabe 123";

        echo 
        "<div class='right_box'>" $msg "</div>";

        // Ausgabe: 0


        echo "<div class='right_box'>".$msg."</div>";

        // Ausgabe: Testausgabe 123 

        Comment


        • #5
          Das funktioniert ohne Session
          Habe auch noch kein JS auf der Box

          Comment


          • #6
            du benutzt trotzdem das falsche Operator-Zeichen

            PHP : . - Operator = Strings hintereinander hängen

            Javascript : + - überladener Operator, Strings werden hintereinander gehängt

            also nimm mal den .-Operator, statt deiner + Zeichen, denn PHP kennt keine Operator-Überladung
            [font=Verdana]
            Wer LESEN kann, ist klar im Vorteil!
            [/font]

            Comment


            • #7
              Originally posted by Marcoru View Post
              Habe auch noch kein JS auf der Box
              Du hast aber teilweise die Syntax von JS benutzt.

              Nur als Ergänzung zu dem was eagle275 bereits schrieb.

              Der Plus-Operator ist in PHP nur ein arithmetischer Operator, welcher der Addition von Werten dient, die aus Ziffern bestehen. Da Deine Werte aber 0 Ziffern enthalten, ist das Ergebnis ebenfalls 0.
              Deine Ausdrücke und Werte bestehen dafür aus Strings, somit solltest Du die auch wie bei Strings üblich mit dem Punkt-Operator verbinden.

              PHP Code:
              echo 3;

              // Ausgabe: 14

              echo "Fünf" "Sechs" "Drei";

              // Ausgabe: 0

              echo "Fünf" " Sechs " "Drei";

              // Ausgabe: Fünf Sechs Drei 

              Comment


              • #8
                oh man
                hatte zu viel von Javascript in letzter Zeit...

                Vielen dank!

                Comment

                Working...
                X