In einem Formular Datums-Listenfeld mit Tagesdatum vorbelegen
In einem Formular biete ich die Eingabe eines Datums mittels Listenfelder an
Hallo Forum,
gerade entwickle ich ein kleines Webtool. Der User soll Daten mit einem wählbaren Datum versehen, z. Bsp. Arbeitszeit am 01.07.2009 8 Stunden auf Projekt 12345.
Dafür möchte ich für Tag, Monat und Jahr ein Drop Down Feld anbieten. Beim Aufruf der Seite soll aber das aktuelle Tagesdatum vorbelegt werden. Wird also das Formular am 01.07. 2009 aufgerufen, soll das auch in den Auswahllisten schon drin stehen.
Mein Lösungsansatz ist simpel, und funktioniert natürlich nicht.
Ich schreibe die date-Informationen in eine Variable, und denke, daß beo einer if Abfrage das richtige Ergebnis raus kommt. Das Ergebnis ist aber immer der letzte Datensatz, also immer der 31.12.2020.
Mache ich da einen Denkfehler oder stimmt nur die Syntax nicht?
Jede Idee hilft weiter, wie immer.
Vielen Dank
und schöne Grüße
Christof
gerade entwickle ich ein kleines Webtool. Der User soll Daten mit einem wählbaren Datum versehen, z. Bsp. Arbeitszeit am 01.07.2009 8 Stunden auf Projekt 12345.
Dafür möchte ich für Tag, Monat und Jahr ein Drop Down Feld anbieten. Beim Aufruf der Seite soll aber das aktuelle Tagesdatum vorbelegt werden. Wird also das Formular am 01.07. 2009 aufgerufen, soll das auch in den Auswahllisten schon drin stehen.
Mein Lösungsansatz ist simpel, und funktioniert natürlich nicht.
<?
$akttag=(date("d"));
$aktmonat=(date("m"));
$aktjahr=(date("y"));
echo "$akttag","<br>";
echo "$aktmonat","<br>";
echo "$aktjahr","<br>";
?>
<form action="erfassen.php" method="post">
<tr>
<td>
</td>
</tr>
<tr>
<td>
<select name="tag" size="1" >
<option value="01" <?if ($akttag='01'){?>selected<?}?>>01</option>
<option value="02" <?if ($akttag='02'){?>selected<?}?>>02</option>
<option value="03" <?if ($akttag='03'){?>selected<?}?>>03</option>
<option value="04" <?if ($akttag='04'){?>selected<?}?>>04</option>
<option value="05" <?if ($akttag='05'){?>selected<?}?>>05</option>
<option value="06" <?if ($akttag="06"){?>selected<?}?> >06</option>
<option value="07" <?if ($akttag='07'){?>selected<?}?>>07</option>
<option value="08" <?if ($akttag='08'){?>selected<?}?>>08</option>
<option value="09" <?if ($akttag='09'){?>selected<?}?>>09</option>
<option value="10" <?if ($akttag='10'){?>selected<?}?>>10</option>
<option value="11" <?if ($akttag='11'){?>selected<?}?>>11</option>
<option value="12" <?if ($akttag='12'){?>selected<?}?>>12</option>
<option value="13" <?if ($akttag='13'){?>selected<?}?>>13</option>
<option value="14" <?if ($akttag='14'){?>selected<?}?>>14</option>
<option value="15" <?if ($akttag='15'){?>selected<?}?>>15</option>
<option value="16" <?if ($akttag='16'){?>selected<?}?>>16</option>
<option value="17" <?if ($akttag='17'){?>selected<?}?>>17</option>
<option value="18" <?if ($akttag='18'){?>selected<?}?>>18</option>
<option value="19" <?if ($akttag='19'){?>selected<?}?>>19</option>
<option value="20" <?if ($akttag='20'){?>selected<?}?>>20</option>
<option value="21" <?if ($akttag='21'){?>selected<?}?>>21</option>
<option value="22" <?if ($akttag='22'){?>selected<?}?>>22</option>
<option value="23" <?if ($akttag='23'){?>selected<?}?>>23</option>
<option value="24" <?if ($akttag='24'){?>selected<?}?>>24</option>
<option value="25" <?if ($akttag='25'){?>selected<?}?>>25</option>
<option value="26" <?if ($akttag='26'){?>selected<?}?>>26</option>
<option value="27" <?if ($akttag='27'){?>selected<?}?>>27</option>
<option value="28" <?if ($akttag='28'){?>selected<?}?>>28</option>
<option value="29" <?if ($akttag='29'){?>selected<?}?>>29</option>
<option value="30" <?if ($akttag='30'){?>selected<?}?>>30</option>
<option value="31" <?if ($akttag='31'){?>selected<?}?>>31</option>
</select>
</td>
<td>
<select name="monat" size="1" >
<option value="01" <?if ($aktmonat='01') { ?>selected<?}?>>Januar</option>
<option value="02" <?if ($aktmonat='02') { ?>selected<?}?>>Februar</option>
<option value="03" <?if ($aktmonat='03') { ?>selected<?}?>>März</option>
<option value="04" <?if ($aktmonat='04') { ?>selected<?}?>>April</option>
<option value="05" <?if ($aktmonat='05') { ?>selected<?}?>>Mai</option>
<option value="06" <?if ($aktmonat='06') { ?>selected<?}?>>Juni</option>
<option value="07" <?if ($aktmonat="07") { ?>selected<?}?> >Juli</option>
<option value="08" <?if ($aktmonat='08') { ?>selected<?}?>>August</option>
<option value="09" <?if ($aktmonat='09') { ?>selected<?}?>>September</option>
<option value="10" <?if ($aktmonat='10') { ?>selected<?}?>>Oktober</option>
<option value="11" <?if ($aktmonat='11') { ?>selected<?}?>>November</option>
<option value="12" <?if ($aktmonat='12') { ?>selected<?}?>>Dezember</option>
</select>
</td>
<td>
<select name="jahr" size="1" >
<option value="2009" <?if ($aktjahr="09"){ ?>selected<?}?> >2009</option>
<option value="2010" <?if ($aktjahr='10'){ ?>selected<?}?>>2010</option>
<option value="2011" <?if ($aktjahr='11'){ ?>selected<?}?>>2011</option>
<option value="2012" <?if ($aktjahr='12'){ ?>selected<?}?>>2012</option>
<option value="2013" <?if ($aktjahr='13'){ ?>selected<?}?>>2013</option>
<option value="2014" <?if ($aktjahr='14'){ ?>selected<?}?>>2014</option>
<option value="2015" <?if ($aktjahr='15'){ ?>selected<?}?>>2015</option>
<option value="2016" <?if ($aktjahr='16'){ ?>selected<?}?>>2016</option>
<option value="2017" <?if ($aktjahr='17'){ ?>selected<?}?>>2017</option>
<option value="2018" <?if ($aktjahr='18'){ ?>selected<?}?>>2018</option>
<option value="2019" <?if ($aktjahr='19'){ ?>selected<?}?>>2019</option>
<option value="2020" <?if ($aktjahr='20'){ ?>selected<?}?>>2020</option>
</select>
</td>
<table align="left" valign="top" >
<tr>
<td>Personalnummer</td>
<td><input name="personal" value = "<?=$_SESSION['userid']?>" ></td>
</tr>
<tr>
<td>Projektnummer</td>
<td><input name="projekt" ></td>
</tr>
<tr>
<td>Auftragsnummer</td>
<td><input name="auftrag" ></td>
</tr>
<tr>
<td>Kundenname</td>
<td><input name="kunde"></td>
</tr>
<tr>
<td>Stunden</td>
<td><input name="stunden"></td>
</tr>
<tr>
<td>
<input type="submit" value="Absenden"><br>
</td>
<td><input type="reset" value="Abbrechen">
</td>
</tr>
</table>
</form>
<br><br>
Ich schreibe die date-Informationen in eine Variable, und denke, daß beo einer if Abfrage das richtige Ergebnis raus kommt. Das Ergebnis ist aber immer der letzte Datensatz, also immer der 31.12.2020.
Mache ich da einen Denkfehler oder stimmt nur die Syntax nicht?
Jede Idee hilft weiter, wie immer.
Vielen Dank
und schöne Grüße
Christof
Please also mark the comments that contributed to the solution of the article
Content-Key: 119858
Url: https://administrator.de/contentid/119858
Printed on: April 19, 2024 at 20:04 o'clock
4 Comments
Latest comment
Tjo
manchmal sieht man den Wald vor lauter Bäume nicht
Du schreibst
<option value="01" <?if ($akttag='01'){?>selected<?}?>>01</option>
Wenn mann sich deine IF Abfrage nun anschaut sieht mann das der keine möglichkeit zum Vergleichen hat.
Mit $akttag='01 weist du der Variabel $akttag die Zahl 01 zu
Zum vergleichen müßte es aber $akttag == '01' heißen
Zuweißen ist immer nur das = da zum vergleichen größer kleiner sind es 2 Zeichen == >= ect...
manchmal sieht man den Wald vor lauter Bäume nicht
Du schreibst
<option value="01" <?if ($akttag='01'){?>selected<?}?>>01</option>
Wenn mann sich deine IF Abfrage nun anschaut sieht mann das der keine möglichkeit zum Vergleichen hat.
Mit $akttag='01 weist du der Variabel $akttag die Zahl 01 zu
Zum vergleichen müßte es aber $akttag == '01' heißen
Zuweißen ist immer nur das = da zum vergleichen größer kleiner sind es 2 Zeichen == >= ect...
Hi,
also ich habe das mal wie folgt gemacht, (nur für den Monat):
Vielleicht hilft es Dir weiter....
Coder
also ich habe das mal wie folgt gemacht, (nur für den Monat):
$monat = array("Januar", "Februar", "März", "April", "Mai", "Juni", "Juli", "August", "September", "Oktober", "November", "Dezember");
$mm = date("n")-1;
echo'<option value="'.date(m).'" selected>'.$monat[$mm].'</option>';
echo'<option value="01">----------------</option>
<option value="01">Januar</option>
<option value="02">Februar</option>
<option value="03">März</option>
<option value="04">April</option>
<option value="05">Mai</option>
<option value="06">Juni</option>
<option value="07">Juli</option>
<option value="08">August</option>
<option value="09">September</option>
<option value="10">Oktober</option>
<option value="11">November</option>
<option value="12">Dezember</option>
</select> ';
Vielleicht hilft es Dir weiter....
Coder
Christof, lern' doch bitte endlich mal den Umgang mit Schleifen!
Das ganze gewusel:
Was bei mir auch noch Kopfschmerzen produziert kann man auch schreiben als:
Und benutze nicht die Short-Open-Tags (<?) - die fliegen in einer der nächsten PHP-Versionen raus und du wunderst dich, warum dein Code nicht mehr geht.
Grüße
Max
Das ganze gewusel:
<option value="01" <?if ($akttag='01'){?>selected<?}?>>01</option>
<option value="02" <?if ($akttag='02'){?>selected<?}?>>02</option>
<option value="03" <?if ($akttag='03'){?>selected<?}?>>03</option>
<option value="04" <?if ($akttag='04'){?>selected<?}?>>04</option>
<option value="05" <?if ($akttag='05'){?>selected<?}?>>05</option>
<option value="06" <?if ($akttag="06"){?>selected<?}?> >06</option>
<option value="07" <?if ($akttag='07'){?>selected<?}?>>07</option>
<option value="08" <?if ($akttag='08'){?>selected<?}?>>08</option>
<option value="09" <?if ($akttag='09'){?>selected<?}?>>09</option>
<option value="10" <?if ($akttag='10'){?>selected<?}?>>10</option>
<option value="11" <?if ($akttag='11'){?>selected<?}?>>11</option>
<option value="12" <?if ($akttag='12'){?>selected<?}?>>12</option>
<option value="13" <?if ($akttag='13'){?>selected<?}?>>13</option>
<option value="14" <?if ($akttag='14'){?>selected<?}?>>14</option>
<option value="15" <?if ($akttag='15'){?>selected<?}?>>15</option>
<option value="16" <?if ($akttag='16'){?>selected<?}?>>16</option>
<option value="17" <?if ($akttag='17'){?>selected<?}?>>17</option>
<option value="18" <?if ($akttag='18'){?>selected<?}?>>18</option>
<option value="19" <?if ($akttag='19'){?>selected<?}?>>19</option>
<option value="20" <?if ($akttag='20'){?>selected<?}?>>20</option>
<option value="21" <?if ($akttag='21'){?>selected<?}?>>21</option>
<option value="22" <?if ($akttag='22'){?>selected<?}?>>22</option>
<option value="23" <?if ($akttag='23'){?>selected<?}?>>23</option>
<option value="24" <?if ($akttag='24'){?>selected<?}?>>24</option>
<option value="25" <?if ($akttag='25'){?>selected<?}?>>25</option>
<option value="26" <?if ($akttag='26'){?>selected<?}?>>26</option>
<option value="27" <?if ($akttag='27'){?>selected<?}?>>27</option>
<option value="28" <?if ($akttag='28'){?>selected<?}?>>28</option>
<option value="29" <?if ($akttag='29'){?>selected<?}?>>29</option>
<option value="30" <?if ($akttag='30'){?>selected<?}?>>30</option>
<option value="31" <?if ($akttag='31'){?>selected<?}?>>31</option>
Was bei mir auch noch Kopfschmerzen produziert kann man auch schreiben als:
<?php for ($i=1; $i <= 31; $i++): ?>
<option <?php echo (($akttag == $i)? 'selected="selected"' : '') ?>><?php echo $i ?></option>
<?php endfor; ?>
Und benutze nicht die Short-Open-Tags (<?) - die fliegen in einer der nächsten PHP-Versionen raus und du wunderst dich, warum dein Code nicht mehr geht.
Grüße
Max