Eintrag mit PHP "selecten"

Der_Jan

Der_Jan

Aktives Mitglied
Thread Starter
Dabei seit
06.01.2004
Beiträge
712
Reaktionspunkte
30
Guten Morgen,:)
mein CMS hält mich auf Trap...

Ich habe eine Timer-Funktion, die ich über das Select-Feld Tag auswählen kann. Ich lasse das Select-Feld automatisch generieren über


PHP:
<?
for($i=1; $i<32; $i++)
{     
echo"<option value='$i'>$i";
}
?>


Nun möchte ich diese Schleife erweitern, sodass, sofern im CMS bereits ein Tag eingetragen wurde, dieser als selected im Select-Feld erscheint (also am entsprechenden Tag ein Häkchen gesetzt wird). Also habe ich das ganze wie folgt ergänzt.


PHP:
<?
for($i=1; $i<32; $i++)
{     
echo"<option value='$i'"; if ((isset($day))&&($day=='$i')) { echo" selected "; } echo">$i";
}
?>


Nur leider funktioniert das ganze nicht. Es wird kein entsprechendes select gesetzt. Habt Ihr eine Idee, wo ich den Denkfehler mache??? :(


Danke!
Der Jan
 
Wo kommt $day her?

Ist das ein POST-Formular? Oder ein GET-Formular?

2nd
 
2ndreality schrieb:
Wo kommt $day her?
Ist das ein POST-Formular? Oder ein GET-Formular?

Das $day ist der Wert, der in der MySQL als Tag bereits gespeichert wurde und es handelt sich um ein POST-Formular.

Hilft das? :confused:

Der Jan
 
Und $day existiert zu dem Zeitpunkt auch als Variable mit Inhalt? Mach mal ein echo $day; vor der for..to Schleife und schau nach, welchen Wert $day hat.

Zur If...then Abfrage: Im Prinzip reicht ja ein

if ($day==$i) {......}

Oder wieso hast Du $i in ' ' oben gesetzt? Ändere mal die Bedingung:

PHP:
echo"<option value='$i'"; if ($day==$i ) { echo" selected "; } echo">$i";

Arbeitest Du mit einem XHTML oder HTML Doctype?

2nd
 
Du musst den Option-Tag auch wieder schließen

PHP:
<option value="...">...</option>
 
scope schrieb:
Du musst den Option-Tag auch wieder schließen

PHP:
<option value="...">...</option>

Hängt vom DOCTYPE und Browser ab. Mit HTML 4.01 fkt. es natürlich auch ohne schliessendes Tag :cool:

Und Safari schafft auch in XHTML 1.0 das Dokument richtig zu parsen - ohne schliessende Tags.


2nd
 
2ndreality schrieb:
Oder wieso hast Du $i in ' ' oben gesetzt? Ändere mal die Bedingung:

PHP:
echo"<option value='$i'"; if ($day==$i ) { echo" selected "; } echo">$i";

2nd

Halleluja, es funktioniert!
Es waren die "Tüttelchen" (=' '), die die Schleife blockiert haben.
Vielen Dank! :)
Der Jan
 
2ndreality schrieb:
Hängt vom DOCTYPE und Browser ab. Mit HTML 4.01 fkt. es natürlich auch ohne schliessendes Tag :cool:

Und Safari schafft auch in XHTML 1.0 das Dokument richtig zu parsen - ohne schliessende Tags.


2nd

Oh, das war mir neu.
Aber ist es laut XHTML wirklich erlaubt?
 
Nein, das ist ganz schlechtes und inkonsistentes HTML - sollte man nie machen. Unter XHTML ist es natürlich auch nicht erlaubt.

Ändert aber nichts an der Tatsache, dass solche Schlunzenbrowser wie Safari trotzdem so tun, als ob alles in Ordnung ist :cool:

2nd
 
Gut, das hatte ich mir fast gedacht.
 
Zurück
Oben Unten