• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

php funktion erst nach javascript starten

Status
Für weitere Antworten geschlossen.
I

incendium

Guest
hi @ all,

ich habe mal eine frage an euch.
und zwar:
ich habe einen counter der eine beliebige zeit herunterzählt, und dann zu einer anderen seite weiterleitet.
so weit so gut. jetzt möchte ich aber, dass, wenn der counter auf null steht, eine session gestartet wird. bloss wenn ich es mit php einfach darunter einfüge, dann startet es schon die session, obwohl der countdown noch nicht auf 0 steht. wie kann ich das machen??
 
Entweder du lässt JavaScript ein PHP-Script aufrufen (top.location.href='?'), das dann die Session startet oder du löst das ganze mit AJAX (wobei ich nicht weiß ob man so eine session starten kann, ich kenn mich damit nicht aus ^^). Aber prinzipiell wird natürlich immer erst das serverseitige ausgeführt bevor das ganze zum Client kommt - und da wird dann das JS nunmal erst ausgeführt.

Andere Frage: Wo ist der Sinn darin, eine Session nach Abaluf eines Countdowns zu starten?
 
es geht darum. bei meinen browsergame soll, wenn der countdown abgelaufen ist, in eine tabelle was eingefügt werden. bloss leider wird es ja immer vor dem ablauf eingefügt. jetzt wollte ich es mit session probieren. aber vll. hat ja einer eine idee. zu dem obigen. also dass es halt nach ablauf des countdowns was einfügt.

mfg
 
Hi,

das lässt sich am besten über Ajax lösen. Wenn der Countdown abgelaufen ist, wird eine Ajax-Funktion aufgerufen, die dann ein PHP-Script ausführt und die notwendigen Daten in eine Tabelle einfügt. Die Daten können durchaus schon in einer Session liegen, oder per Javascript übergeben werden, oder sonstwo hergeholt werden.

Viele Grüße
 
ja leider kann ich kein ajax.

Code:
<script LANGUAGE="JAVASCRIPT">
<!--
var counter=10;
var URL="test.htm"
function timer() {
document.form.input.value=counter;
if (counter == 0) {location.href=URL;} else {counter = counter - 1; setTimeout("timer()",
1000);}
}
//--> </script>
Code:
<form name="form">
  <div align="center"><center><p><input type="text" name="input" size="3"> </p>
  </center></div>
</form>
und die body zeile:
Code:
<body ONLOAD="timer()">
. So wo mus ich jetzt genau das php hinschreiben??
 
Ok, ich werde es nicht schaffen, dir übers Wochenende Ajax beizubringen.

Die Tabelle, in die etwas eingefügt werden soll, handelt es sich dabei um eine HTML-Ausgabe, oder um eine Datenbank. (Nicht das ich dich falsch verstanden habe)
Ich bin bis jetzt davon ausgegangen, dass, wenn der Counter abgelaufen ist, Daten in eine Datenbank eingetragen werden sollen, bzw. Serverseitig etwas erledigt werden muss.
Alles andere lässt sich auch ohne Ajax, sondern nur mit Javascript lösen.

Ich werde es wahrscheinlich nicht mehr schaffen, vor Montag zu antworten.

Viele Grüße
 
verlass dich nicht aufs JS, speichere zusätzlich noch einen simestamp serverseitig ab wann die tabellle aufgebaut werden darf, sonst kannste mit jeder JS konsole dein skript "killen" :roll:
 
Status
Für weitere Antworten geschlossen.
Zurück
Oben