Selectfeld mit For-Schleife per Session übergeben

Nun ja, die drei Zeilen sind auch nicht getestet. Das ist lediglich eine überarbeitete Version von dir.

Das fehlende Semikolon wirst du doch wohl selbst einfügen können.. :rolleyes:
 
Das Semikolon ist leider nicht das PRoblem!!

Es klappt einfach nicht!

Ich weiß nicht mehr weiter

Ich glaube ich werde einfach jede Zeile so einfügen, also ohne for Schleife!
 
PHP:
<select name="geb"
<?
if(isset($_POST['geb']) && $_POST['geb'] == "") {
  echo " style='background:yellow;'";
}
?>
>
<option value="">Tag</option>
<?
for ($i=1; $i<32; $i++)  {
  echo "<option value='$i'";
  if ('$i' == $_SESSION['geb']) {
    echo " selected";
  }
  echo ">$i</option>";
}
?>
</select>

So sieht das Sript im Moment aus. Das Originalscript von deluxe besagte

PHP:
if('Tag' == $_SESSION['geb']

Aber ich verstehe nicht wo Tag herkommt zumal es nirgendwo definiert ist.
Ich hätte nicht gedacht dass es so kompliziert ist!

Klappt nicht heißt übrigens in diesem Fall dass leider immer noch nichts übergeben wird ....
 
PHP:
if('Tag' == $_SESSION['geb']
Aber ich verstehe nicht wo Tag herkommt zumal es nirgendwo definiert ist.
Das ist auch falsch. Ich weiss, bei mir ist es auch so, ich bin nunmal auch nur ein Mensch. ;)

Richtig wäre es wie folgt:
PHP:
if($i== $_SESSION['geb']

Nicht jedoch wie du es geschrieben hast:
PHP:
if('$i'== $_SESSION['geb']
Variablen innerhalb von Single Quotes werden nicht verarbeitet. Sie werden wie Text behandelt und nicht wie gewünscht deren Inhalt ausgelesen.

Ansonsten kann ich mich kuddeldaddeldu nur anschließen, überprüfe bitte was beim Absenden des Formulars am Server tatsächlich ankommt.
Wenn du dir nicht sicher bist poste die Ausgabe des var_dump( $_POST ), welche nach dem Absenden entsteht, bitte hier rein.

"Geht nicht" ist und bleibt kein Fehlerbeschreibung. ;)
 
Hi ihr Beiden,

ich muss sagen ich bin sehr zufrieden mit dem ganzen Support hier.

HAT GEKLAPPT, DIE AUSWAHL WIR ÜBERGEBEN!

Deluxe, dein Script war richtig, nur statt Tag sollte man §i nehmen und nicht wie ich es gemacht habe sondern wie du danach gepostet hast ohne Anführungszeichen.

Hier das funktionierende Script nochmal:

PHP:
<select name="geb"
<?
if(isset($_POST['geb']) && $_POST['geb'] == "") {
  echo " style='background:yellow;'";
}
?>
>
<option value="">Tag</option>
<?
for ($i=1; $i<32; $i++)  {
  echo "<option value='$i'";
  if ($i == $_SESSION['geb']) {
    echo " selected";
  }
  echo ">$i</option>";
}
?>
</select>

Danke nochmal, tolles Forum!:-)
 
Zurück