Problem mit selected von <option>

gruebel-gruebel

Erfahrenes Mitglied
Moin,

ich möchte das im Kundenblatt die option die angeklickt würde nach dem blättern immer noch in dem Feld steht.
Nur ich bekomme es nicht hin.
Wäre nett wenn mir jemand helfen könnte.
Im voraus schon mal danke.

script:

PHP:
$zone_1 = mysql_query("
                SELECT
                     kat_bez,
                     zone_post
                FROM
                     bm_kategorien
                WHERE
                     brief_eu_we > 0
                AND
                     id2 = 5
                ORDER BY
                     zone_post
              ");

         echo"<select name=\"land1\" cellspacing=\"2\" cellpadding=\"2\">";

              while($land = mysql_fetch_assoc($zone_1))
              {

              echo '<option  value="'.$land["kat_bez"].'"';

                       if (isset($_SESSION['str_land1']) and $_SESSION['str_land1'] == $land)
                 {
                         echo '". selected." ';
                 }
                         echo '>'.$land["kat_bez"].'</option>';
                 }

         echo "</select>

Gruß
Gruebel-gruebel
 
Danke,
nur es geht nicht immer beim erneuten aufruf der seite wird das erste Feld angezeigt und nicht das was angeklickt wurde.
script:

PHP:
$zone_1 = mysql_query("
                SELECT
                     kat_bez,
                     zone_post
                FROM
                     bm_kategorien
                WHERE
                     brief_eu_we > 0
                AND
                     id2 = 5
                ORDER BY
                     zone_post
              ");

         echo"<select name=\"land1\" cellspacing=\"2\" cellpadding=\"2\">";

              while($land = mysql_fetch_assoc($zone_1))
              {

              echo '<option  value="'.$land["kat_bez"].'"';

                       if (isset($_SESSION['str_land1'])== $_SESSION['str_land1'] == $land)
                 {
                         echo ' selected';
                 }
                         echo '>'.$land["kat_bez"].'</option>';
                 }

         echo "</select>
 
Also für mich ist diese Zeile schwachsinn :)
PHP:
if (isset($_SESSION['str_land1'])== $_SESSION['str_land1'] == $land)

Denke mal das ist so gemeint:
PHP:
if (isset($_SESSION['str_land1']) && $_SESSION['str_land1'] == $land)

Wobei das auch noch nicht ganz richtig sein kann weil $land nen Array ist.
Da fehlt also noch der genaue Index.
 
Danke für die Antwort,
war ein Schreibfehler von mir hatte etwas ausprobiert.
Habe es wieder geändert funktioniert aber trotzdem nicht.
Beim erneutet aufruf springt er immer in das erste Feld von der option zurück.

Für ein weiteren Tipp!! wäre NETT

gg
 
Ich kann nur raten (da ich weder den Inhalt von $_SESSION['str_land1'] noch von deinem mysql-eintrag kenne).

PHP:
if (isset($_SESSION['str_land1']) && $_SESSION['str_land1'] == $land["kat_bez"])

Und ich hoffe deine Session ist korrekt gestartet und du speicherst auch richtig in den entsprechenende Wert ;)
Sonst ist die Baustelle wo anders...

lg
 
Die Session wird richtig gespeichert.
Ich habe auf der Seite warenkorb dieses stehen. Hatte noch einen Fehler in der Variable
$land gab es 2x. wenn es nicht daran liegt wo könnte es noch stehen.

PHP:
<?php
session_start();
if(strlen($_POST["land_w"]) !=0) $_SESSION['str_land_w'] = $_POST['land_w'];
?>

......
.....
......
   $zone_1 = mysql_query("
                SELECT
                     kat_bez,
                     zone_post
                FROM
                     bm_kategorien
                WHERE
                     brief_eu_we > 0
                AND
                     id2 = 5
                ORDER BY
                     zone_post
              ");

         echo"<select name=\"land_w\" cellspacing=\"2\" cellpadding=\"2\">";

              while($land_w = mysql_fetch_assoc($zone_1))
              {
              echo '<option  value="'.$land_w["kat_bez"].'"';

                       if (isset($_SESSION['str_land_w']) && $_SESSION['str_land_w'] == $land_w)
                 {
                         echo ' selected';
                 }
                         echo '>'.$land_w["kat_bez"].'</option>';
                 }

         echo "</select>
 
Zurück