Phil: selected Auswahl Problem

Hey Leute.

Ich habe einen Styleswitcher, der den aktuellen Style anzeigen soll.
Es gibt 3 Styles. Style 1, Style 2 und Style 3. Leider zeigt er egal welcher Style aktiviert ist, Style 3 an. Das soll nicht so sein sondern wenn Style 2 aktiv ist, dann soll auch Style 2 selected sein.

Hier das Formular mit Script:

<? include('style.php'); ?> // Da steht die aktuelle Style-Nr. drin.
<form method="post" action="index.php" name="formularstyle" class="forms">
<p><select name="auswahl" size="1" id="stylewahl">
<?php
for($i=1;$i<=3;$i++):
if($i==$style)
echo "<option value='$i' class='opt' selected>Style $i </option>";
else
echo "<option value='$i' class='opt' selected>Style $is </option>";
endfor;
?>
</select>
<input type="submit" name="stylewahl" value="Style w&auml;hlen" class='opi'></p></form>

Ich hoffe ihr könnt mir helfen.

mfg

Phil

  1. Sry in der 9. Zeile des Codes ist das $is ein $i also ohne "s".

    mfg

    Phil

  2. Hallo Phil,

    Es gibt 3 Styles. Style 1, Style 2 und Style 3. Leider zeigt er egal welcher Style aktiviert ist, Style 3 an. Das soll nicht so sein sondern wenn Style 2 aktiv ist, dann soll auch Style 2 selected sein.

    Puh, 22:29, ich versuche, mitzukommen.

    <? include('style.php'); ?> // Da steht die aktuelle Style-Nr. drin.

    Entscheide dich für eine Schreibweise, entweder <? ... ?> oder <?php ... ?>.

    <form method="post" action="index.php" name="formularstyle" class="forms">
    <p><select name="auswahl" size="1" id="stylewahl">
    <?php
    for($i=1;$i<=3;$i++):
    if($i==$style)

    Wo wird $style definiert? Wo wird die if-Verzweigung begrenzt (durch geschweifte Klammern)?

    echo "<option value='$i' class='opt' selected>Style $i </option>";
    else
    echo "<option value='$i' class='opt' selected>Style $is </option>";

    Mittlerweile 22:31, bitte verzeih mir, dass ich den Unterschied zwischen beiden Varianten unter Berücksichtigung deines zweiten Postings grad nicht finde.

    Beste Grüße
    Richard

    1. Hallo Richard,

      Wo wird die if-Verzweigung begrenzt (durch geschweifte Klammern)?

      Die sind hier natürlich überflüssig, 22:52...

      echo "<option value='$i' class='opt' selected>Style $i </option>";
      else
      echo "<option value='$i' class='opt' selected>Style $i </option>";

      ...was nichts am nicht vorhandenen Sinn dieses Konstrukts ändert.

      Beste Grüße
      Richard

  3. habe d'ehre Phil

    for($i=1;$i<=3;$i++):
    if($i==$style)
    echo "<option value='$i' class='opt' selected>Style $i </option>";
    else
    echo "<option value='$i' class='opt' selected>Style $is </option>";
    endfor;
    ?>

    Nimm einfach "selected" nach else raus, da du sonst jede option auf selected setzt.

    man liest sich
    Wilhelm