Ankündigung

Einklappen
Keine Ankündigung bisher.

Umrechnung manueller Datums-/Uhrzeit-Eingaben

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Umrechnung manueller Datums-/Uhrzeit-Eingaben

    Hallo zusammen,

    da ich meine Termine bei der Ausgabe nach Datum / Uhrzeit sortiert
    anzeigen möchte, muß ich diese erst einmal umrechnen.

    Ich habe mir dazu eine, zugegeben sehr umständliche, Version erstellt,
    bei der ich die Eingaben in einzelne Variablen zerlege.
    Dieses Verfahren hat aber sehr viele Nachteile.

    Gibt es eine Möglichkeit, eine Eingabe umzurechnen, die auf mal das
    Format z.B. 10.-12.11.2007 und 14:00 - 18:30 Uhr aufweisen kann ?

    Die Sortierung sollte dann jeweils auf den Termin-Anfang (10.11. 14:00)
    zugreifen.
    Wie ist so etwas zu realisieren ?

    Sollte es keine Lösung geben, werde ich wohl auf meine jetzige
    Verfahrensweise (ungerne) zurück greifen müssen.

    Gruß, Mike
    sigpic
    Mike's EEP-Welt CSC Oldenburg
    Link-Sammlung Smily-Sammlung

  • #2
    AW: Umrechnung manueller Datums-/Uhrzeit-Eingaben

    Hi,
    Zitat von sheeba1507 Beitrag anzeigen
    Die Sortierung sollte dann jeweils auf den Termin-Anfang (10.11. 14:00) zugreifen.
    dazu solltest du einfach die Termine in einem für die Auswertung sinnvollem Format speichern. Wenn Du eine datenbank nutzt, brauchst Du nur das Datumformat zu nehmen, ansonsten bietet sich als Format z.B.:
    2007-11-10-14:00 | 2007-11-10-18:30
    an. Diese Werte als erstes Feld in einem Array und Du kannst ganz einfach sort() oder rsort() verwenden.

    Gruß
    Ingo
    Ingo Webdesign

    Kommentar


    • #3
      AW: Umrechnung manueller Datums-/Uhrzeit-Eingaben

      Hallo Ingo,

      ... dazu solltest du einfach die Termine in einem für die Auswertung sinnvollem Format speichern. Wenn Du eine datenbank nutzt, brauchst Du nur das Datumformat zu nehmen, ...
      da als mögliche Eingabe (bisher) ja auch 10.-12.11.2007 zugelassen war,
      kann ich in der Datenbank doch kein Datums-Format anwenden.
      Also bin ich doch gezwungen, es als "varchar = 20" zu deklarieren.

      Alternativ könnte ich das Eingabefeld auch teilen (10.11.2007 und 12.11.2007),
      ebenso die Uhrzeit-Eingabe. Aber dann hätte ich immer noch das Problem
      mit der Umrechnung.

      Ich hatte mit meiner neuen (umständlichen) Verfahrensweise so eine Idee,
      die Start-Daten umzurechnen in Minuten und diese als Summe in eine
      Variable zu speichern. Anhand der Summe hätte ich dann sortieren können.

      Das würde auch funktionieren, jedoch müßte ich bei einer falschen oder
      fehlenden Eingabe zu viele Variablen wieder an das Formular übergeben.

      Eine konkrete Lösung mittels eines Arrays ist mir nicht bekannt,
      deshalb das Posting hier.
      Vieleicht kannst du mir ja etwas konkretes als Vorlage anbieten, womit
      ich erstmal arbeiten und lernen kann.

      Gruß, Mike
      sigpic
      Mike's EEP-Welt CSC Oldenburg
      Link-Sammlung Smily-Sammlung

      Kommentar


      • #4
        AW: Umrechnung manueller Datums-/Uhrzeit-Eingaben

        Hi,
        Zitat von sheeba1507 Beitrag anzeigen
        da als mögliche Eingabe (bisher) ja auch 10.-12.11.2007 zugelassen war,
        kann ich in der Datenbank doch kein Datums-Format anwenden.
        Also bin ich doch gezwungen, es als "varchar = 20" zu deklarieren.
        Du machst einen großen Denkfehler: In die Datenbank solltest Du die Daten so speichern, wie es für die Auswertung sinnvoll ist und nicht, wie der User sie eingegeben hat.

        Gruß
        Ingo
        Ingo Webdesign

        Kommentar


        • #5
          AW: Umrechnung manueller Datums-/Uhrzeit-Eingaben

          Hallo Ingo,

          als ich versucht habe, mich mit den Funktionen und dem Aufbau eines
          Arrays etwas näher zu befassen, wurde mir schwarz vor den Augen.
          Mir wurde wieder einmal bewußt, daß ich noch eine ganze Menge zu
          lernen habe in Bezug auf Webseiten gestalten.

          Da dieser Themen-Bereich nicht mal eben auf die Schnelle zu erlernen
          ist, habe ich mich entschieden, erst einmal die von mir ausgearbeitete
          (umständliche) Methode anzuwenden.

          Wenn ich dann irgendwann (in grauer Zukunft ) mit dem Thema Arrays
          einigermaßen klar komme, kann ich immer noch umstellen.

          Trotzdem Danke für die Tipps. Leider reichen meine Kenntnisse darüber
          aber zur Zeit (noch) nicht aus, um damit arbeiten zu können.

          Gruß, Mike
          sigpic
          Mike's EEP-Welt CSC Oldenburg
          Link-Sammlung Smily-Sammlung

          Kommentar


          • #6
            AW: Umrechnung manueller Datums-/Uhrzeit-Eingaben

            Also so richtig habe ich mir den gesammten Text nicht durchgelesen, aber ich mache es so:
            In der Datenbank als Typ DATETIME verwenden. Was anderes (anderen Anordnung als JJJJ-MM-TT HH:MM:SS) geht da nicht rein. Am besten die Datumsangaben in einer select-Box vorgeben (da geht nichts schief).
            Die Ausgabe gestalte ich dann so:
            PHP-Code:
            $datum_t explode(" "$row['datum']);
            $datum_t_d explode("-"$datum_t['0']); 
            und
            PHP-Code:
            $datum_t_d['2'] . "." $datum_t_d['1'] . "." $datum_t_d['0'] . " " $datum_t['1'
            Damit wird mir die Jahreszahl wieder ordentlich dargestellt.
            Das richtige DATETIME Datum produziert man übrigens so:
            PHP-Code:
            date("Y-m-d H:i:s"

            Kommentar


            • #7
              AW: Umrechnung manueller Datums-/Uhrzeit-Eingaben

              Hallo mi-schi,

              Am besten die Datumsangaben in einer select-Box vorgeben (da geht nichts schief).
              Diese Idee hatte ich zuerst codiert. Aber :

              1.
              Wie willst du die Eingabe 30.02.2008 - 31.02.2008 verhindern ?

              2.
              Weißt, wieviele Vorgaben ich da codieren muß ?
              Tag = 01-31, Monat = 01-12, Jahr = 2007-nnnn, Stunde = 00-23, Minuten = 00-59
              und das ganze zweimal (Datum von/bis und Uhrzeit von/bis).

              Da kann ich gleich eine direkte Eingabe erlauben und die Werte auf Gültigkeit
              überprüfen.
              Außerdem hätte ich auch bei dieser Version insgesamt 10 Eingabefelder für
              Datum und Uhrzeit, was ich ja vermeiden wollte.
              In der Datenbank als Typ DATETIME verwenden.
              Wie willst du in dieses Format eine mögliche Eingabe in Form von 10.-12.11.2007
              eintragen ?

              Wie schon gesagt, werde ich erst einmal die von mir schon fast umgesetzte
              Verfahrensweise anwenden, bis mir etwas besserers einfällt.

              Gruß, Mike
              sigpic
              Mike's EEP-Welt CSC Oldenburg
              Link-Sammlung Smily-Sammlung

              Kommentar


              • #8
                AW: Umrechnung manueller Datums-/Uhrzeit-Eingaben

                Na dann eben zwei Felder mit DATETIME. Du kannst ja schreiben, dass nur Eingaben angenommen werden, die so aufgebaut sind:
                JJJJ-MM-TT HH:MM:SS
                oder nur so (ich weiß ja nicht, wie du es willst)
                JJJJ-MM-TT
                Dann überprüfst du die Eingaben:
                Code:
                if explode "-" zeit != 3 Teile == false
                if teil 1 != strlen 4 == false
                if teil 2 != strlen 2 == false
                if teil 3 != strlen 2 == false
                if eingabe von > eingabe bis == false
                if MM < 01 und MM > 12 == false
                if TT < 01 und TT > 31 == false

                Kommentar


                • #9
                  AW: Umrechnung manueller Datums-/Uhrzeit-Eingaben

                  Hi,
                  Zitat von sheeba1507 Beitrag anzeigen
                  Außerdem hätte ich auch bei dieser Version insgesamt 10 Eingabefelder für Datum und Uhrzeit, was ich ja vermeiden wollte.
                  Schau mal hier - 7 Felder, von denen drei optional sind und 2 schon praktischer Weise vorgegebn werden. Also für den User i.d.R. noch zwei, drei oder 5 Felder auszufüllen.

                  Gruß
                  Ingo
                  Ingo Webdesign

                  Kommentar


                  • #10
                    AW: Umrechnung manueller Datums-/Uhrzeit-Eingaben

                    @mi-schi

                    Da ich überwiegend ältere Kunden habe, die sich mit einer Datums-Eingabe
                    in Form JJJJ-MM-TT nur schwer anfreunden können, habe ich mich für die
                    gewohnte Eingabe entschieden.
                    Lediglich beim Layout habe ich jetzt zwei Möglichkeiten :

                    1. Eingabe über Select-Boxen
                    Vorteil : Dadurch bleibt als einziges die Prüfung "von < bis" übrig.
                    Nachteil : Vorgaben-Codierung sehr umfangreich.

                    2. Eingabe über normale Leer-Felder
                    Vorteil : Keine Vorgaben-Codierung.
                    Nachteil : Umfangreiche Prüf-Routinen.

                    Meine endgültige Entscheidung darüber ist noch nicht gefallen.

                    @Ingo

                    So ähnlich wie bei dir sieht mein derzeitiger Aufbau auch aus.
                    Lediglich bei der Zeit-Angabe habe ich Stunden und Minuten ebenfalls
                    getrennt, da einige User bei der Trennung "." und nicht ":" verwenden.

                    Gruß, Mike
                    sigpic
                    Mike's EEP-Welt CSC Oldenburg
                    Link-Sammlung Smily-Sammlung

                    Kommentar


                    • #11
                      AW: Umrechnung manueller Datums-/Uhrzeit-Eingaben

                      Hi,
                      Zitat von sheeba1507 Beitrag anzeigen
                      Lediglich bei der Zeit-Angabe habe ich Stunden und Minuten ebenfalls
                      getrennt, da einige User bei der Trennung "." und nicht ":" verwenden.
                      wenn Du das schon weisst, ist es doch ein leichtes, beides zuzulassen - sowie auch die Angabe nur der Stunden und dann :00 anzuhängen.

                      Gruß
                      Ingo
                      Ingo Webdesign

                      Kommentar


                      • #12
                        AW: Umrechnung manueller Datums-/Uhrzeit-Eingaben

                        Eventuell hilft dir das weiter:

                        Kommentar


                        • #13
                          AW: Umrechnung manueller Datums-/Uhrzeit-Eingaben

                          @Ingo
                          ... wenn Du das schon weisst, ist es doch ein leichtes, beides zuzulassen ...
                          Warum soll ich beides zulassen und dann bei einer Prüfung auf ":" setzen ?
                          sowie auch die Angabe nur der Stunden und dann :00 anzuhängen
                          Und was macht der User dann mit einer Eingabe von z.B. "14:35" ???

                          Sollte ich deine Aussage mißverstanden haben, kläre mich bitte auf.

                          @rami
                          Eventuell hilft dir das weiter: ...
                          Laß mal die "function" weg und du hast einen Teil der Codierung, wie ich sie
                          derzeit bei mir verwende.

                          Effektiv weitergebracht hat mich dein Vorschlag aber auch nicht, sorry.
                          Mein Problem wurde dadurch auch nicht gelöst.

                          Gruß, Mike
                          sigpic
                          Mike's EEP-Welt CSC Oldenburg
                          Link-Sammlung Smily-Sammlung

                          Kommentar


                          • #14
                            AW: Umrechnung manueller Datums-/Uhrzeit-Eingaben

                            Hi,
                            Zitat von sheeba1507 Beitrag anzeigen
                            Warum soll ich beides zulassen und dann bei einer Prüfung auf ":" setzen ?
                            weil der Compter sich auf den Nutzer einstellen sollte und es ihm so einfach wie möglich machen sollte - nicht umgekehrt!

                            Zitat von sheeba1507 Beitrag anzeigen
                            Und was macht der User dann mit einer Eingabe von z.B. "14:35" ???
                            Probiere es in meinem Script ruhig aus. Du kannst "14", 14:35" oder 14.35" eingeben und das Script "versteht" Dich... Und genauso sollte es in einer nutzerfreundlichen Anwendung auch sein: keine starren Eingaberegeln und umfangreiche Bedienungsanleitungen, sondern Erkennung verschiedenartiger Benutzereingaben und nur dann eine Nachfrage/Fehlermeldung, wenn diese nicht eindeutig erkennbar ist.

                            Sowas nennt sich Software-Ergonomie und wird leider selten gut umgesetzt, weil viele Programmierer den Nutzern ihre starren Eingaben abverlangen und nicht daran denken, für den Nutzer zu programmieren.

                            Gruß
                            Ingo
                            Ingo Webdesign

                            Kommentar


                            • #15
                              AW: Umrechnung manueller Datums-/Uhrzeit-Eingaben

                              @Ingo
                              Du kannst "14", 14:35" oder 14.35" eingeben und das Script "versteht" Dich...
                              Eine derartige Eingabe-Möglichkeit wäre optimal. Leider habe ich keine Idee,
                              wie das Check-Script hierzu aussehen muß.

                              Vieleicht könntest du mir den Aufbau etwas näher erläutern.

                              Gruß, Mike
                              sigpic
                              Mike's EEP-Welt CSC Oldenburg
                              Link-Sammlung Smily-Sammlung

                              Kommentar

                              homepage-forum.de - Hilfe für Webmaster! Statistiken

                              Einklappen

                              Themen: 57.203   Beiträge: 432.036   Mitglieder: 29.639   Aktive Mitglieder: 29
                              Willkommen an unser neuestes Mitglied, Shalin.

                              Online-Benutzer

                              Einklappen

                              793 Benutzer sind jetzt online. Registrierte Benutzer: 1, Gäste: 792.

                              Mit 9.939 Benutzern waren am 17.05.2023 um 21:38 die meisten Benutzer gleichzeitig online.

                              Die neuesten Themen

                              Einklappen

                              Die neuesten Beiträge

                              Einklappen

                              Lädt...
                              X