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

Wo ist mein Fehler? (JS Zeit Script)

Basti_

New member
Hallo erstmal!

Ich habe ein Problem mit meinem Script. Und zwar ist es eine Verbindung zwischen PHP & JavaScript. Bei dem script geht es eigentlich um folgendes:
Man gibt eine geplante Ankunft ein (für ein eigenes browsergame ist das) und dann wird berechnet ob diese Ankunft realisierbar ist. Wenn nicht (und hier ist mein Problem) wird die Reelle Ankunft angegeben. Hier ist ein Beispiel:

Uhrzeit: 00:38:35
Geplante Ankunft: 00:40:00
Flotten Flugzeit: 00:00:32
Flotten Start: 00:29:28
Reelle Ankunft: 00:39:67

Wie ihr seht fügt er die 32 Sekunden hinzu allerdings macht er bei 60 nicht stopp und fängt wieder bei 00 an. Auch die eine Minute für den übergang ab 60 wird hinzugefügt, allerdings sollte er bei 60 schluss machen und dann wieder bei 00 Sekunden weiterzählen.

Folgende Variablen werden verwendet:
td : <span>-Tag mit Inhalt der aktuellen Zeit
rd : <span>-Tag mit Inhalt der reellen Ankunft
vh/$fsh = Flotten Start Zeit - Stunden
vm/$fsm = Flotten Start Zeit - Minuten
vs/$fss = Flotten Start Zeit - Sekunden
rank_h = Reelle Ankunft - Stunden
rank_m = Reelle Ankunft - Minuten
rank_s = Reelle Ankunft - Sekunden
$fH = Flotten Flugzeit - Stunden
$fM = Flotten Flugzeit - Minuten
$fS = Flotten Flugzeit - Sekunden

Code:
function flotten_zeit(){
	var td = document.getElementById("time_display");
	var rd = document.getElementById("rank_display");
	var jetzt = new Date();
	var hour = jetzt.getHours();
	var minute = jetzt.getMinutes();
	var second = jetzt.getSeconds();
	var vh = <? echo $fsh; ?>;
	var vm = <? echo $fsm; ?>;
	var vs = <? echo $fss; ?>;
	var rank_h = "";
	var rank_m = "";
	var rank_s = "";
	if (hour>=vh) rank_h = hour + <? echo $fH; ?>;
	if (minute>=vm) rank_m = minute + <? echo $fM; ?>;
	if (second>=vs) rank_s = second + <? echo $fS; ?>;
	if (rank_s>60) { rank_s = 0 + rank_s; rank_m++; }
	if (rank_m>60) { rank_m = 0 + rank_m; rank_h++; }
	if (rank_h>24) { rank_h = 0 + rank_h; }
	if (hour<10) hour="0"+hour;
	if (minute<10) minute="0"+minute;
	if (second<10) second="0"+second;
	if (rank_h<10) rank_h="0"+rank_h;
	if (rank_m<10) rank_m="0"+rank_m;
	if (rank_s<10) rank_s="0"+rank_s;
	td.innerHTML = hour + ":" + minute + ":" + second;
	rd.innerHTML = rank_h + ":" + rank_m + ":" + rank_s;
	window.setTimeout("clock()",1000);
}

Wäre echt nett wenn ihr mir helfen könntet das zu realisieren!!
Außerdem bin ich noch am überlegen ob ich den ganzen Reelle Ankunfts kram in eine eigene Funktion packe damit es nicht jede Sekunde erneut ausgeführt wird. Meint ihr das wäre gut oder ändert das an der Performance nichts? Also ich meine das is nen mini-script un im Moment das einzige auf der Seite das oft ausgeführt wird.

MfG, Basti
 
Zuletzt bearbeitet:
Zurück
Oben