URL: https://www.overclockers.at/coding-stuff/s_zeiterfassungstool_in_php_mysql_123544/page_2 - zur Vollversion wechseln!
24:00 Uhr (= 1) * 24 = 24 h
12:00 Uhr (= 0,5) * 24 = 12 h
13:45 (= 0,5729166667) * 24 = 13,75 h
13.75 Stunden = 0,5729166667 Tage
12h = 0.5d
24h = 1d
Schau's dir nochmal an. Stimmt schon
Nein, nein! Das es stimmt, ist mir schon klar! Ich weiss nur nicht, womit und wie ich 13:45 multiplizieren/dividieren soll/muss um auf die Dezimalzahl 0,5729166667 zu kommen.
achso es ging um tage... wlkikiv
Zitat von bluefoxxachso es ging um tage... wlkikiv
nein, sollte so stimmen
ähm, für sowas verwendet man gewöhnlich timestamps...
Zitat von watchoutähm, für sowas verwendet man gewöhnlich timestamps...
woher hast du die wochentagsangaben mit monday tuesday usw..
am einfachsten würds dann wohl gehen wenn du immer überprüfst ob es ein friday is, und wenn ja, soll er die stunden der letzten 5 tage zusammenrechnen
Zitat von userohnenamenwoher hast du die wochentagsangaben mit monday tuesday usw..
am einfachsten würds dann wohl gehen wenn du immer überprüfst ob es ein friday is, und wenn ja, soll er die stunden der letzten 5 tage zusammenrechnen
warum sollst du etwas eintragen müssen?
is ja nicht nötig
du gehst z.b. auf den 10.9.
das script checkt ab, es is freitag und rechnet die heutigen stunden und die der letzten 4 tage mit
und wenn am 10.9. keine stunden eingetragen sind, wird halt 0 dazugerechnet
oder seh ich das falsch?
für mich wärs jetzt die am schnellsten lösbare lösung
Naja, ein Eintrag in der Datenbank existiert nur dann, wenn ich ihn vornehme. Sprich: Wenn ich am Freitag nix eingebe, existiert kein Datensatz mit dem Datum zum Freitag. Ergo dessen steht dieser Tag dann für die Ausgabe der Tabelle auch nicht zur Verfügung, sondern nur Mo, Di, Mi und Do. Ab der nächsten Woche würde ich dann wieder mit Montag beginnen. Dadurch fehlt mir der Freitag. Außer eben, ich würde den Freitag auch immer eintragen. Ansonsten habe ich keine Möglichkeit die Datensätze nach dem letzten Tag der Woche (=Freitag) zu durchsuchen.
Oder hab ich da was nicht gecheckt?
du musst ja auch ohne einen datenbankeintrag das derzeitige datum mit wochentag rausbekommen oder?
denn irgendwie brauchst du ja auch werte mit denen du etwas in die datenbank eintragen kannst
und mit genau der funktion schaust sozusagen nur zum schein, was für ein tag es is (eben z.b. freitag) und dann liefert er dir das aus
oder anders:
du nimmst ein startdatum, und machst dann eine eigenen wochenansicht wo alle 7 tage der woche mit den stunden dargestellt werden
deswegen: timestamps
gewöhnlich versucht man die daten in einer datenbank so "rein" wie möglich zu halten, sodass man später auch noch änderungen vornehmen kann, demnach tragst du in die datenbank nur die timestamps ein, mit denen kannst du später alles machen:
also, statt start steht dann wwi 82237127 drinnen - kein problem, denn mit den date/time-funktionen von php kannst das im 0,nix konvertieren (bei stop, pause, usw. natürlich genauso)
wenn du jetzt die differenz in stunden haben willst machst einfach (pauseend-pausestart)/60/60 fertig.
für's interface machst einfach so, dass man nen button hat "jetzt fang' ich an", "jetzt mach ich pause",... und wenn man den anclickt wird dann einfach der timestamp in die db eingatragen.
übrigens: man kann an einem tag auch mehrere pausen machen, demnach währe es klug, wenn das auch in der db. vorgesehen wäre
wenn du jetzt wissen willst ob ein tag der letzte einer woche ist/war nimmst du einfach den timestamp des aktuellen und den des folgenden tages und schaust ob der numerische "dayofweek"(format-code 'w') grösser oder kleiner wird (einziges problem ist hier, dass der sonntag für die amis der anfang der woche is...)
hth
overclockers.at v4.thecommunity
© all rights reserved by overclockers.at 2000-2025