PHP SessionII

  • irgendwas mach ich falsch.. ich übergebe mittels POST die variable "$job" und überprüfe, ob sie gesettet ist. und das ist sie. "jobCheckBox is set" wird ausgegeben. aber der rest (rot) markiert nicht. ich hab schon alles durchprobiert..

    <input name="job" value="0" type="checkbox">


    if ( isset($_SESSION['job']) ){

    echo "jobCheckBox is set.";
    echo $job;
    echo "$job";
    echo " end.";

    if ($job == "0"){

    echo "good";

    }


    }

  • Wo weist du denn der Variablen $job einen Wert zu? Ist das, was du verwenden willst, $_POST['job'] oder $_SESSION['job']?

  • aber das scheint auch nicht nötig zu sein..

    seite1.php
    <td><input name="akadem_titel" value ="<?php echo($akadem_titel); ?>">

    seite2.php
    if ( isset($_POST['akadem_titel']) ){
    $_SESSION['akadem_titel'] = $_POST['akadem_titel'];
    }


    funktioniert. die daten, welche ich auf seite1 eingebe, werden in seite 2 nach post in eine session übergeben und beim wechsel auf seite 1 - falls sie existieren, wieder zurückgeschrieben.

    nur die analogie zur checkbox funktioniert nicht.

  • Zitat von Paulchen

    Wo weist du denn der Variablen $job einen Wert zu? Ist das, was du verwenden willst, $_POST['job'] oder $_SESSION['job']?


    Ich glaub da gibts einen PHP-Konfig Parameter der irgendwas mit globals heißt (register_globals?) dann kann man auch mit $job zugreifen, is aber allgemein eher nicht empfohlen glaub ich

  • Zitat von sommeralex


    nur die analogie zur checkbox funktioniert nicht.

    poste mal den HTML-Code zur Checkbox. Ich glaub bei Checkboxen musst die value-Option im HTML angeben, sonst wird eben nur die Variable gesetzt (was ja meistens auch reicht, denn ist sie gesetzt wurde das Hakerl angeklickt, und sonst nicht).

  • Zitat von sommeralex

    aber das scheint auch nicht nötig zu sein..

    Manchmal trügt auch der Schein:

    PHP
    <?php
            session_start();
            if($_POST) {
                    $_SESSION['text']=$_POST['text'];
            }
    ?>
    <form method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>">
    <input type="text" name="text" value="<?php echo $text; ?>" />
    </form>


    Das funktioniert auf mit meinem PHP (4.4.2) nicht wie gewünscht. Ersetze ich $text durch $_SESSION['text'] bzw. $_POST['text'], funktioniert es. Ich finde auf die Schnelle auch in der PHP.INI nichts, womit ich das beeinflussen könnte (mit register_globals hat das nichts zu tun).

    Stell vielleicht mal die Funktion deines Browsers ab, Eingaben in Formularfelder zu speichern.

  • 1.php:

    2.php:

    Code
    <?
    session_start();
    
    
    echo $_SESSION['check'];
    
    
    ?>
  • danke!!! jetzt ist es klar. ich darf nicht mit $variable arbeiten, sondern mit post oder session_[$variable]

    (eh so, wie es vorhin gepostet wurde..)

    ein frustrierter programmierer weniger ;)

Jetzt mitmachen!

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