• Das Erstellen neuer Accounts wurde ausgesetzt. Bei berechtigtem Interesse bitte Kontaktaufnahme über die üblichen Wege. Beste Grüße der Admin

[FRAGE] Datumsdifferenz berechnen

haiflosse

New member
Ich verwende folgende JavaScript Funktion, mit der ich die Differenz zwischen der aktuellen Zeit und einer fixen Zeit berechnen möchte.
Ich bekomme aber immer eine Stunde mehr als Differenz heraus.
Hoffe es kann mir hier jemand weiterhelfen.
Danke

PHP:
 function uhr_anzeigen() {
			   
        var Datum = new Date();
        var stunde = Datum.getHours();
        var minute = Datum.getMinutes();
        var sekunde = Datum.getSeconds();


		var pause = new Date (Datum.getFullYear() ,Datum.getMonth(),Datum.getDate(),19,43,00,00);

        
		Zeit = ((stunde < 10) ? " 0" : " ") + stunde
        Zeit += ((minute < 10) ? ":0" : ":") + minute
        Zeit += ((sekunde < 10) ? ":0" : ":") + sekunde
        Zeit += " Uhr"

		 document.getElementById('dat').innerHTML=Zeit;
		
		ze = (pause.getTime() - Datum.getTime());
		Z = new Date (ze);
		 var stunde = Z.getHours();
        var minute = Z.getMinutes();
        var sekunde = Z.getSeconds();
	
	 
		Zeit2 = ((stunde < 10) ? " 0" : " ") + stunde
        Zeit2 += ((minute < 10) ? ":0" : ":") + minute
        Zeit2 += ((sekunde < 10) ? ":0" : ":") + sekunde
        Zeit2 += " Uhr"
		
		 document.getElementById('zeit').innerHTML=Zeit2;
		
		   
	   }
 
also wenn ich das richtig vertsehe ziehst du vom jetzigen datum (19:43Uhr) wieder den jetzigen timestamp ab ja?
 
@TechEye.
Ich möchte von einer Zeit in der Zukunft die aktuelle Zeit abziehen.

@jspit
Die Funktion Datedif kann ich in Javascript nicht finden.

Hoffe da hat noch jemand eine Idee.
Danke
 
Zuletzt bearbeitet:
PHP:
var now = new Date();
var timeTo = now.getFullYear()+'/'+(now.getMonth()+1)+'/'+now.getDay()+' 19:43';
var diff = DateDiffArray("",timeTo);

if(diff) alert(diff[1]+':'+diff[2]+':'+diff[3]);
else alert("vorbei");

Die Funktionen DateDiffArray() und DateDiff() findest du in den oben verlinkten Beitrag.


Wenn du es selber machen möchtest, da hat dir TecEye einen Link geschenkt.
 
Zuletzt bearbeitet:
Dein Problem ist, dass du aus der Differenz ze ein Datumsobjekt erzeugst. Dieses hat aber eine Zeitzone (bei dir ziemlich wahrscheinlich GMT+1), die bei der Ausgabe natürlich beachtet wird. new Date(0); ist ja "Thu, 01 Jan 1970 00:00:00 GMT", aber bei dir wird wegen der Zeitzone .getHours() eine 1 liefern. Du könntest hier mit .getUTCHours() arbeiten, aber dein Ansatz ist generell nicht ideal. Schau' dir lieber die gegebenen Links an.
 
Zurück
Oben