PHP SessionIII

  • Hallo! Ich möchte mehrere Sessions verwalten - und bin jetzt endlich bei CheckBoxen angelangt. Ich habe eine seite.php1 auf welcher sich ein:

    <input name="job_technik" value="0" type="checkbox" <?PHP echo session_check_checkbox($job_technik) ?>>

    befindet. Der Benutzer kann es also anklicken, oder nicht. Bei einem submit wird der klickstatus in eine session_variable aufgenommen. Sollte sich der Benutzer wieder zurückbewegen (seite1.php) wird der status abgefragt. Seltsamerweise fällt meine function session_check_checkbox immer in die else return. obwohl ich die session variable sachgemäß zuweise (seite2.php)

    if ( isset($_POST['job_technik']) ){
    $_SESSION['job_technik'] = $_POST['job_technik'];

    }

    ----------------------------------------------------
    wenn ich beispielsweise ein input type text (also eine normales eingabefeld wie folgt abfrage:

    if ( isset($_SESSION['gruendungsjahr']) ){
    $gruendungsjahr= $_SESSION['grueundungsjahr'];
    }

    funktionierts und eine variable wird aus der Session Variable übergeben. Wenn ich das ganze aber in eine Funktion verpacke, gehts nicht, es kommt immer "else":

    function session_check_checkbox($checkbox){

    if ( isset($_SESSION[$checkbox]) ){
    return "checked";
    }
    else{
    return "";
    }
    }

  • Zitat von sommeralex
    HTML
    <input name="job_technik" value="0" type="checkbox" <?PHP echo session_check_checkbox($job_technik) ?>>

    $job_technik? Nicht "job_technik"? Ist das einzige, was mir auf die Schnelle auffällt.

  • ich weiß auch nicht mehr, was der fehler war.. ich weiß nur, dass es jetzt funktioniert, und ich zumindest einen fehler ausgebessert habe:

    bei einer input text wird der value ja automatisch verändert - je nachdem, ob man etwas eingibt, oder nicht.

    bei einer checkbox bleibt meine session variable ja erhalten, in dem moment, wo sie zum ersten mal zugewiesen wird. wenn ich beim zweiten mal herumklicken die checkbox NICHT anklicke, blieb bei meinem code der alte session wert erhalten. habs einfach mit unsset gelöst.

    danke! schönen sonntag!

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!