Ich möchte gerne in einem Formular ein Datum eintragen (in Deutsch d-m-Y)
und es soll dann als iso standart in die DB eingetragen werden.
Eigentlich sollte es so funktionieren:
<html>
<body>
<?
//Verbindung zu Datenbank
include("connect.inc.php");
function date_german2mysql($datum) {
list($tag, $monat, $jahr) = explode(".", $datum);
return sprintf("%04d-%02d-%02d", $jahr, $monat, $tag);
}
if ($submit) {
$sql = "INSERT INTO retr1 (datum) VALUES ('date_german2mysql($datum)')";
$result = mysql_query($sql,$db);
echo "Ihr Daten wurden abgeschickt! Vielen Dank!<br><a href=\"test2.php\">zur Uebersicht<br>";
}
else {
?>
<form method="post" action="<? echo $PHP_SELF ?>">
<table border="0" align="center">
<tr>
<td>Datum</td>
<td><input type="text" name="datum" value="<? echo $datum ?>" size="10"></td>
</tr><tr>
<td> </td>
<td><input type="submit" name="submit" value="Abschicken"></td>
</tr>
</table>
</form>
<?
}
?>
</body>
</html>
Aber leider erhalte ich als Ergebniss immer 0000-00-00
Wo liegt der Fehler ??? Ich weiss leider nicht weiter.
und es soll dann als iso standart in die DB eingetragen werden.
Eigentlich sollte es so funktionieren:
<html>
<body>
<?
//Verbindung zu Datenbank
include("connect.inc.php");
function date_german2mysql($datum) {
list($tag, $monat, $jahr) = explode(".", $datum);
return sprintf("%04d-%02d-%02d", $jahr, $monat, $tag);
}
if ($submit) {
$sql = "INSERT INTO retr1 (datum) VALUES ('date_german2mysql($datum)')";
$result = mysql_query($sql,$db);
echo "Ihr Daten wurden abgeschickt! Vielen Dank!<br><a href=\"test2.php\">zur Uebersicht<br>";
}
else {
?>
<form method="post" action="<? echo $PHP_SELF ?>">
<table border="0" align="center">
<tr>
<td>Datum</td>
<td><input type="text" name="datum" value="<? echo $datum ?>" size="10"></td>
</tr><tr>
<td> </td>
<td><input type="submit" name="submit" value="Abschicken"></td>
</tr>
</table>
</form>
<?
}
?>
</body>
</html>
Aber leider erhalte ich als Ergebniss immer 0000-00-00
Wo liegt der Fehler ??? Ich weiss leider nicht weiter.
Comment