Problem mit globaler variable

Kurt Cobain

Erfahrenes Mitglied
Tag TAg

hab hier den code
PHP:
<?php
$p = "false";

function chp()
{
    global $p;
    $p = "true";
}

if(!isset($_REQUEST["b1"]) and !isset($_REQUEST["b2"]))
{
    echo $p;
?>
<form action="<?php echo $_SERVER["PHP_SELF"]; ?>" method="POST">
  <input type="Submit" name="b1" value="Button1">
</form>
<?php
}
elseif(isset($_REQUEST["b1"]))
{
    chp();
    echo $p;
?>
<form action="<?php echo $_SERVER["PHP_SELF"]; ?>" method="POST">
  <input type="Submit" name="b2" value="Button2">
</form>
<?php
}
elseif(isset($_REQUEST["b2"]))
{
    echo $p;
}
?>

Am anfang ist $p ja false .
Dann klickt man auf den button b1, dann wird $p ja true.

Wenn man dann auf den nächsten Button b2 klickt, wird wieder $p ausgegeben. aber diesmal ist $p wider false.
Wiso ich hab doch die globale $p geändert


kann mir einer helfen, dass bei schritt 3 true rauskommt

gruß ich
 
Du musst das geänderte $p doch auch weitergeben!
Woher soll das Script denn wissen welchen Wert $p bei dem vorhergehenden Aufruf hatte?

Du könntest es in einem versteckten Eingabefeld platzieren.

greetz
daddz
 
chris_sit hat gesagt.:
mit Sessions -> Suchfunktion

aber ein <input type="hidden"... sollte doch auch kein Problem sein
Tag TAg

ich könnte es schon mit <input type="hidden"... machen. Blos das Problem ist, dass man einen hidden-input von außen manipulieren kann.

was meinst du mit Session Suchfunktion. Was kann man da machen?

gruß ich
 
Zurück