# HTML Formular-"select" abhängig von PHP-Variable setzen ! Wie geht das ?



## Bombi (7. Mai 2003)

Hallo schon wieder,

ich habe mal eine einfache(?) Frage an die, die sich auskennen. Ich habe in meiner PHP-Datei 3 Variablen:

$Tag   $Monat    $Jahr

Und ich habe 3 HTML-Formulare-"Select", wo ich halt den Tag (von 1-31), den Monat (Jan-Dez) und das Jahr einstellen kann. Dann habe ich noch einen Submit-Button mit dem ich das eingestellte Datum in die 3 Variablen schreibe. Die Seite springt auf sich selbst und jetzt sollen in den 3 Formularen die vorher eingegeben Werte vorausgewählt sein. Aber wie mache ich das ??? 

Ich hoffe ich hab' es nicht allzu kompliziert beschrieben und Ihr könnt nachvollziehen, wo mein Problem liegt  


Hier der Teil meiner PHP-Datei:
-------------------------------------
<form action="diagramm_einzeln.php">
Tag
	<select NAME="Tag" size="1">
	    <option>01</option>;	<option>02</option>;	<option>03</option>;	<option>04</option>;
	    <option>05</option>;	<option>06</option>;	<option>07</option>;	<option>08</option>;
	    <option>09</option>;	<option>10</option>;	<option>11</option>;	<option>12</option>;
	    <option>13</option>;	<option>14</option>;	<option>15</option>;	<option>16</option>;
	    <option>17</option>;	<option>18</option>;	<option>19</option>;	<option>20</option>;
	    <option>21</option>;	<option>22</option>;	<option>23</option>;	<option>24</option>;
	    <option>25</option>;	<option>26</option>;	<option>27</option>;	<option>28</option>;
	    <option>29</option>;	<option>30</option>;	<option>31</option>;
	</select>

Monat
	<select name="Monat" size="1">
	    <option>Januar</option>;	<option>Februar</option>;	<option>M&auml;rz</option>;
	    <option>April</option>;	<option>Mai</option>;		<option>Juni</option>;
	    <option>Juli</option>;	<option>August</option>;	<option>September</option>;
	    <option>Oktober</option>;	<option>November</option>;	<option>Dezember</option>;
	</select>

Jahr
	<select name="Jahr" size="1">
	    <option>2003</option>;
	</select>

<br>
    <input type="submit" value="anzeigen">
</form>


----------



## hohoho (7. Mai 2003)

Probier es mal so:

```
<form action="diagramm_einzeln.php">
Tag
<select NAME="Tag" size="1">
<?
for($i=0;$i<=31;$i++) {
    echo "<option";
    if($i==$Tag) {
        echo " selected";
    }
    echo ">$i</option>";
}
?>
</select>

Monat
<select name="Monat" size="1">
<?
$monate = array("Januar", "Februar", "März", "April", "Mai", "Juni", "Juli", "August", "September", "Oktober", "November", "Dezember");
foreach($monate as $m) {
    echo "<option";
    if($m==$Monat) {
        echo " selected";
    }
    echo ">$m</option>";
}
?>
</select>

Jahr
<select name="Jahr" size="1">
<?
for($i=2003;$i<=2003;$i++) {
    echo "<option";
    if($i==$Jahr) {
        echo " selected";
    }
    echo ">$i</option>";
}
?>
</select>

<br>
<input type="submit" value="anzeigen">
</form>
```


----------



## Tim C. (7. Mai 2003)

Jetzt bitte noch zwecks XHTML Konformität und Co statt selected, ein selected=yes draus machen und alle sind glücklich


----------



## Fabian H (7. Mai 2003)

Ne, *selected="selected"*


----------



## Tim C. (7. Mai 2003)

ups ich hab nix gesagt  mein Fehler *wegrenn*


----------



## Christian Fein (7. Mai 2003)

> _Original geschrieben von hohoho _
> *Probier es mal so:
> *
> 
> ...



Auch das kann mann besser machen


```
for($a = 0;
     $a < mcal_days_in_month($month,$year);
     $a++) {
    echo "<opti ..usw
 }
```
mcal_days_in_month($month,$year);
So bekommst du gleich raus ob der betreffende Monat 28, 29, 30 oder gar 31 Tage hat. Permanent 31 ist nicht ganz korrekt

Gibt schoene Kalenderfunktionen:
http://www.php.net/manual/en/ref.mcal.php


----------

