Seite 3 von 3
Verfasst: 23.07.2008 09:19
von BB-BF-BM
Du solltest vielleicht noch überlegen, dass man mit der letzten Lösung bis zu 19 Monate angeben konnte...
In dieser Hinsicht ist dir mit checkdate() geholfen (wenn du den Link anklickst, siehst du die nötigen Parameter...
Verfasst: 23.07.2008 12:30
von S2B
Das zusammen mit einem explode() sollte die beste und kürzeste Lösung ergeben...
Code: Alles auswählen
$datum = explode('.', $datum);
if (count($datum) != 3)
{
// ungültig
}
$tag = intval($datum[0]);
$monat = intval($datum[1]);
$jahr = intval($datum[2]);
Verfasst: 23.07.2008 17:45
von Boecki91
@bairan
Hast du dir meinen Code angeschaut?
Ich erwarte zumindest eine Rückmeldung, zu Dingen die du gut findest/ besser machen würdest oder du einfach Fragen hast.
@BB-BF-BM
ich hatte für checkdate mal was eigenes programmiert, bis ich anhand der Fehlermeldung merkte das es das schon gibt

Die Funktion checkdate() verwende ich übrigends auch in dem verlinktem Code...
(Den ich an deiner Stelle ehrlich gesagt auch nicht gelesen hätte
)
Im meinem Script wird bei checkdate Misserfolg allerdings auch noch eine/mehrere Fehlermeldungen ausgeben

Verfasst: 23.07.2008 21:07
von BB-BF-BM
Hallo!
@Boecki: Mein Kommentar war auch nicht an dich, sondern an bairan (und dessen Code, den er
hier gepostet hatte) gerichtet.
@S2B: Ich wäre an deiner
hier erwähnten Funktion interessiert und würde mich dazu über eine PM o.ä. freuen.
EDIT: Zu Boeckis Code:
Code: Alles auswählen
if($timestamp = checkdate($month, $day, $year))
{
$time = mktime(0,0,0, $month,$day,$year);
echo 'UNIX-Timestamp:(Sekunden seid dem 1.1.1970): ' . $time;
echo "\n<br/>";
echo '<br />Dein Zahlencode: ' . date('ymd', $time);
}
die Variable(nbezeichnung) $timestamp ist etwas verwirrend - zumal auch überflüssig -, da sie gemäß der Funktion boolean ist...
Code: Alles auswählen
if(preg_match('#(\d{1,2})\.(\d{1,2})\.(\d{2,4})#',$eingabe,$result))
Mit diesem Suchmuster dürfen auch Buchstaben vor und hinter dem Datum stehen, z.B. "asdf14.02.2009qwert". Ist dies nicht gewünscht, solltest du mit
^ und $ arbeiten. Ein regulärer Ausdruck sollte eigentlich vermieden werden, wenn er - wie oben von S2B bereits zusammengefasst wurde - durch explode() und intval() ersetzt werden kann.
Verfasst: 23.07.2008 22:32
von Boecki91
Ich will aber Buchstaben
Mein Code ist keines falls das non Plus Ultra, soll halt zeigen wie man es machen
kann
PS:
Den Regex habe ich tatsächlich für Daten (pl v. Datum) im Text benutzt
Verfasst: 23.07.2008 23:35
von bairan
Boecki91 hat geschrieben:@bairan
Hast du dir meinen Code angeschaut?
Ich erwarte zumindest eine Rückmeldung, zu Dingen die du gut findest/ besser machen würdest oder du einfach Fragen hast.
@BB-BF-BM
ich hatte für checkdate mal was eigenes programmiert, bis ich anhand der Fehlermeldung merkte das es das schon gibt

Die Funktion checkdate() verwende ich übrigends auch in dem verlinktem Code...
(Den ich an deiner Stelle ehrlich gesagt auch nicht gelesen hätte
)
Im meinem Script wird bei checkdate Misserfolg allerdings auch noch eine/mehrere Fehlermeldungen ausgeben

Ich habe doch eine Antwort geschrieben zu deinem Code, oder nicht? Dann nochmal, leider blicke ich bei so viel Code noch nicht ganz druch

doch, ich versuche jeden Tag wieder etwas mehr dazuzulernen.
Ich habe vorallem schwieigkeiten mit den verschiedenen Funktionen wie timestamp oder ähndliches, das muss ich mir zuerst mal anschauen und selber etwas rumprobieren bis ich das wohl ganz verstehe.
Verfasst: 24.07.2008 01:14
von S2B
BB-BF-BM hat geschrieben:@S2B: Ich wäre an deiner
hier erwähnten Funktion interessiert und würde mich dazu über eine PM o.ä. freuen.
nicht meine...
