gast: Textfeld für Uhrzeit formatieren

Hallo,

ich habe ein Textfeld mit dem ich eine Uhrzeit in eine MySQL DB speichern will. Ich möchte jetzt die Eingabemöglichkeit für das Textfeld so beschränken, dass man nur Uhrzeiten, also "09:00" etc. eintragen kann. Am besten wäre es wenn der Doppelpunkt fest eingetragen ist und nur die zwei Zahlenstellen links und rechts davon eingetragen werden kann. des weiteren wäre eine Prüfabfrage wahrscheinlcih nicht schlecht, so dass man nicht z.B. "64:99" eintragen kann.

Hat jemand ein Tipp wie das geht oder eine Idee wie man sowas auf eine andere Art lösen kann?

Danke!

  1. echo $begrüßung;

    Ich möchte jetzt die Eingabemöglichkeit für das Textfeld so beschränken, dass man nur Uhrzeiten, also "09:00" etc. eintragen kann.

    HTML bietet eine solche Möglichkeit nicht. Mit Javascript kannst du solch ein Verhalten hinzufügen, doch Javascript ist abschaltbar. Eine serverseitige Prüfung ist unbedingt notwendig.

    echo "$verabschiedung $name";

    1. echo $begrüßung;

      Ich möchte jetzt die Eingabemöglichkeit für das Textfeld so beschränken, dass man nur Uhrzeiten, also "09:00" etc. eintragen kann.

      HTML bietet eine solche Möglichkeit nicht. Mit Javascript kannst du solch ein Verhalten hinzufügen, doch Javascript ist abschaltbar. Eine serverseitige Prüfung ist unbedingt notwendig.

      echo "$verabschiedung $name";

      Ok, gut zu wissen, danke.
      Auf Java werde ich verzichten, ist kein Standard in unserer Firma und mir jetzt auch zu kompliziert, da ich nur noch zwei Tage habe...

      Begrenze jetzt die Zeicheneingabe auf 5 Zeichen und prüfe mittels einer if (zumindest habe ich das vor) ob das richtige Format vorhanden ist.

      Gerade habe ich gesehn, dass man mit dem Attribut "onchange" eine aktion "wenn das Element geändert wurde" ausführen kann. Ist eine Prüfung an dieser Stelle sinnvoll und wie kann ich das realisieren? Oder sollte die Prüfung beim betätigen des Submitbutton erfolgen? Ich muss sowieso prüfen, ob alle Felder ausgefüllt sind.

      Gruß

      1. echo $begrüßung;

        HTML bietet eine solche Möglichkeit nicht. Mit Javascript kannst du solch ein Verhalten hinzufügen, doch Javascript ist abschaltbar. Eine serverseitige Prüfung ist unbedingt notwendig.
        Auf Java werde ich verzichten, ist kein Standard in unserer Firma und mir jetzt auch zu kompliziert, da ich nur noch zwei Tage habe...

        Java ist nicht Javascript.

        Begrenze jetzt die Zeicheneingabe auf 5 Zeichen und prüfe mittels einer if (zumindest habe ich das vor) ob das richtige Format vorhanden ist.

        Auch eine Begrenzung mit maxlength im input-Element lässt sich vom Client ignorieren.

        Gerade habe ich gesehn, dass man mit dem Attribut "onchange" eine aktion "wenn das Element geändert wurde" ausführen kann. Ist eine Prüfung an dieser Stelle sinnvoll und wie kann ich das realisieren? Oder sollte die Prüfung beim betätigen des Submitbutton erfolgen? Ich muss sowieso prüfen, ob alle Felder ausgefüllt sind.

        Jegliche Prüfung auf dem Client setzt eine clientseitige Programmierung voraus. Javascript ist dafür die verbreitetste Möglichkeit. Selbst wenn du darauf nicht verzichten wolltest, kann der Client diese Prüfung leicht umgehen. Es ist dabei egal, in welches Ereignis du die Prüfung einbaust. Eine Javascript-Prüfung kann als Zusatz verwendet werden, um dem Server etwas Arbeit abzunehmen - wenn der Client Javascript zuließ. Vertraue nicht auf Dinge, die beim Client passieren sollen.

        P.S. Bitte keine Vollzitate. Zitiere nur das, worauf du dich beziehst und nur so viel wie nötig, um den Zusammenhang zwischen Antwort und Vorpostertext erkennen zu können.

        echo "$verabschiedung $name";

  2. Hi,

    ich habe ein Textfeld mit dem ich eine Uhrzeit in eine MySQL DB speichern will. [...] Am besten wäre es wenn der Doppelpunkt fest eingetragen ist

    warum das? Ich bin es gewöhnt, Uhrzeiten ohne Doppelpunkt zu schreiben (0930 für halb zehn). Andere bevorzugen vielleicht einen einfachen Punkt als Trennzeichen (09.30); auch ein 'h' als Trennzeichen ist nicht ungewöhnlich (09h30 oder auch 9h30).

    Schön wäre es, wenn du dem Benutzer die Freiheit lässt, die Uhrzeit so einzutragen, wie er es gewöhnt ist. Diesen String musst du dann natürlich entsprechend flexibel aufdröseln.

    Hat jemand ein Tipp wie das geht oder eine Idee wie man sowas auf eine andere Art lösen kann?

    Jedenfalls nicht in HTML. Zwingend nötig halte ich eine Überprüfung in dem serverseitigen Script, das die Eingabe entgegennimmt; optional kann eine Vorab-Prüfung clientseitig stattfinden, z.B. mit Javascript.

    So long,
     Martin

    --
    Man sollte immer wissen was man sagt
     - aber auf keinen Fall alles sagen, was man weiß.
    1. [latex]Mae  govannen![/latex]

      Schön wäre es, wenn du dem Benutzer die Freiheit lässt, die Uhrzeit so einzutragen, wie er es gewöhnt ist. Diesen String musst du dann natürlich entsprechend flexibel aufdröseln.

      viertel sieben; dreiviertel zehn? (Schrecklich übrigens)

      Cü,

      Kai

      --
      The frog was a prince, the prince was a brick, the brick was an egg, the egg was a bird.
      Hadn't you heard?
      Yes, we're happy as fish and gorgeous as geese, and wonderfully clean in the morning.
      selfcode sh:( fo:| ch:? rl:( br:< n4:# ie:{ mo:| va:) js:) de:> zu:) fl:( ss:| ls:?
      1. Hallo Kai,

        Schön wäre es, wenn du dem Benutzer die Freiheit lässt, die Uhrzeit so einzutragen, wie er es gewöhnt ist.
        viertel sieben; dreiviertel zehn?

        oh, jetzt wird's anspruchsvoll. ;-)

        (Schrecklich übrigens)

        Ach, ich hab mich dran gewöhnt, denn hier im Schwäbischen ist das völlig normal und in der Umgangssprache absolut üblich. Aber ich hatte anfangs auch etwas Schwierigkeiten damit.

        So long,
         Martin

        --
        Die meisten Menschen werden früher oder später durch Computer ersetzt.
        Für manche würde aber auch schon ein einfacher Taschenrechner genügen.