Ausgewähltes Listenfeld wieder anzeigen

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Ausgewähltes Listenfeld wieder anzeigen

    Hidiho!
    Ich schreibe mir grade ein script, mit dem ich Quellcode für eine Tabelle erstelle.
    Dabei lasse ich auch in einem Listenfeld die Ausrichtung des Textes wählen.

    <select name="textausrichtung">
    <option value="left" selected>links</option>
    <option value="center">zentriert</option>
    <option value="right">rechts</option>
    </select>

    Wenn man auf abschicken klickt, ruft sich das PHPscript selbst noch mal auf und zeigt die erstellte Tabelle oben an. das ist bis dahin kein Problem. Die eingegebenen Werte lasse ich zum einfacheren Bearbeiten wieder mit zb.

    <input type="text" name="textzelle" value="<?php echo $textzelle;?>">

    reinschreiben. Das geht bei Textfeldern natürlich, aber bei Listenfeldern klappt das natürlich, weil ich es nicht schaffe, dem vorher ausgewählten Wert die Eigenschaft selected zuzuweisen.

    Das heißt, wenn man "zentriert" wählt und dann auf Abschicken klickt, wird der Wert wieder auf "links" gestellt.
    Wie löse ich dieses Problem?
    Vielen Dank

  • #2
    Code:
    <?
    if !isset($textausrichtung) {
    	$textausrichtung = "left";
    }
    ?> 
    <select name="textausrichtung"> 
    	<option value="left" 	<?if ($textausrichtung ==  "left") 	{ print "selected"; }?>>links</option> 
    	<option value="center"	<?if ($textausrichtung ==  "center") 	{ print "selected"; }?>>zentriert</option> 
    	<option value="right"	<?if ($textausrichtung ==  "right") 	{ print "selected"; }?>>rechts</option> 
    </select>

    Kommentar


    • #3
      Original geschrieben von Terminator
      Hidiho!

      <select name="textausrichtung">
      <option value="left" selected>links</option>
      <option value="center">zentriert</option>
      <option value="right">rechts</option>
      </select>
      mach das etwa so:
      <?
      if($textausrichtung == "left") print "selected";
      ?>
      innerhalb der options oder mit arrays, etc.
      Beantworte nie Threads mit mehr als 15 followups...
      Real programmers confuse Halloween and Christmas because OCT 31 = DEC 25

      Kommentar


      • #4
        Vielen herzlichen Dank!
        Klappt super!
        Kannst du mir noch sagen, was die isset konstruktion bewirkt?

        Kommentar


        • #5
          Mit isset() wird abgefragt, ob die Variable, in Deinem Fall $textausrichtung, gesetzt ist. Beim erstmaligem Aufruf Deines Skriptes ist diese Variable noch nicht gesetzt, so wird der Defaultwert festgelegt, daß eben "left" vorausgewählt wird.
          Nachdem Du mit Deinem Formular das Skript selbst wieder aufrufst ist im zweiten Durchgang $textausrichtung durch das Formular gesetzt worden, in diesem Fall zieht der !isset($textausrichtung) nicht mehr, der Inhalt der Vraiable wird so belassen wie er eben ist.

          Kommentar


          • #6
            isset($var)
            checked ob die variable $var gesetzt is
            Beantworte nie Threads mit mehr als 15 followups...
            Real programmers confuse Halloween and Christmas because OCT 31 = DEC 25

            Kommentar


            • #7
              Vielen herzlichen Dank, ihr beiden und schönes Wochenende!

              Kommentar

              Lädt...
              X