"Christmas - the time to fix the computers of your loved ones" « Lord Wyrm

Datei schreiben via JavaScript und PHP

schizophrenia 21.07.2006 - 10:12 1168 18
Posts

schizophrenia

Bloody Newbie
Registered: Sep 2004
Location: Austria
Posts: 32
hi leute.

Ich möchte in einem javaScript eine php funktion aufrufen die mir etwas in eine Datei schreibt da meines Wissens javascript mit dateien nicht umgehen kann.

das JavaScript wird alle 3 sekunden erneut aufgerufen jedoch wird nur beim ersten aufruf in die Datei geschrieben.

Code:

<?php
function write($query)
{
$datei= fopen("test.txt","a+");
fputs($datei,$query);
fclose($datei);
}

?>

<script language="JavaScript">
function prüfeStatus()
{
var js_var='<? echo write("text"); ?>';
window.setTimeout("prüfeStatus()",3000);
}
</script>

Inhalt Datei nach unzähligen sekunden:

text


weiß jemand rat?

lg schurli

mat

Administrator
Legends never die
Avatar
Registered: Aug 2003
Location: nö
Posts: 25422
soll das so ablaufen: ich geh auf deine internetseite, ein javascript lädt php und der php code schreibt mir dann eine datei auf meinen computer?

semteX

begehrt die rostschaufel
Avatar
Registered: Oct 2002
Location: Pre
Posts: 14592
dein problem ist folgendes:
JavaScript = Clientside
PHP = Serverside.

JavaScript kann KEINE funktionen von PHP aufrufen!

Was javascript kann ist allerdings .php seiten zu öffnen.. sofgern es ned von nem popup blocker oder ähnlichm abgedreht wird

schizophrenia

Bloody Newbie
Registered: Sep 2004
Location: Austria
Posts: 32
hi, danke fürs schnelle antworten

Ablauf:

jemand geht auf meine homepage, javascript lädt php code und der php code schreibt in eine Datei die auf dem Server der HP liegt.

es soll eine art überwachungstool werden.

es wird nichts auf den computer des surfers geschrieben keine sorge;)

schizophrenia

Bloody Newbie
Registered: Sep 2004
Location: Austria
Posts: 32
kann es nicht? hab ganz schön viele beispiele gefunden wo der ablauf genau der is wie in meinem bsp.

die datei mit dem code ist ja auch eine .php seite.

ist es nicht egal ob ich in einem html dokument via js eine php seite aufrufe oda gleich eine php seite mache?

mat

Administrator
Legends never die
Avatar
Registered: Aug 2003
Location: nö
Posts: 25422
das war auch nur ein kleiner test, per js und php ist das auch nicht möglich ;)

was du brauchst ist AJAX :)

Zitat
kann es nicht? hab ganz schön viele beispiele gefunden wo der ablauf genau der is wie in meinem bsp.

die datei mit dem code ist ja auch eine .php seite.

ist es nicht egal ob ich in einem html dokument via js eine php seite aufrufe oda gleich eine php seite mache?
du kannst per php ein js schreiben, aber nicht umgekehrt.

Zitat von dio
Ich glaub dir ist das Prinzip von Serverside und Clientside Applications nicht ganz bewusst :).
:D

mat

Administrator
Legends never die
Avatar
Registered: Aug 2003
Location: nö
Posts: 25422
mir ist gerade eingefallen, dass du es auch über einen iframe machen könntest, den man nicht sieht.

die js-timer funktion reloadet den iframe dann einfach immer mit anderen parametern.

schizophrenia

Bloody Newbie
Registered: Sep 2004
Location: Austria
Posts: 32
danke für eure tipps sag i gleimal

was mir jedoch net ganz eingeht....das javascript ruft die php funktion auf..es funktioniert...es wird beim aufruf ja in die datei geschrieben, jedoch nur beim ersten aufruf...wenn des ganze so net möglich ist, warum schreibt er dann überhaupt in die datei???

mat

Administrator
Legends never die
Avatar
Registered: Aug 2003
Location: nö
Posts: 25422
das ist unabhängig vom javascript code, der source code wird ja 1x geparst (so wie immer) und dabei wird die funktion aufgerufen. dem php parser ist ganz egal was noch in dem file drinnensteht, er achtet nur auf die < ?php ? > tags.

schizophrenia

Bloody Newbie
Registered: Sep 2004
Location: Austria
Posts: 32
versteh i des richtig...es wird ja einmal geparst...dabei wird die funktion einmal ausgeführt und es wird in die datei gschrieben? dh. jeglicher reload des js führt deiner meinung nach die php funktion nicht mehr aus???

mat

Administrator
Legends never die
Avatar
Registered: Aug 2003
Location: nö
Posts: 25422
ja, richtig!!!11 :eek:

ist aber nur meine meinung :o

schizophrenia

Bloody Newbie
Registered: Sep 2004
Location: Austria
Posts: 32
nana versteh mi net falsch...i setz mehr auf deine meinung als du glaubst...nur ...i hab den beweis dass javascript inkl. php funktion alle 3 sekunden ausgeführt wird. brauch i ja nur ein echo rein machen in den php code. und alle 3 sek leuchtet auf "jetzt wird in die datei geschrieben". allerdings eben nur beim ersten mal wirklich.....muh?

semteX

begehrt die rostschaufel
Avatar
Registered: Oct 2002
Location: Pre
Posts: 14592
gut, und jetzt bin ich ganz weit weg...

wie zum henker rufst du via JS eine PHP Funktion auf? Oder lädst du die Seite in irgned nen Iframe, den du übers JS steuerst?

schizophrenia

Bloody Newbie
Registered: Sep 2004
Location: Austria
Posts: 32
genau so wie es im code oben steht*G*

das js wird alle 3 sekunden aufgerufen und hüpft in der zeile,

var js_var='<? echo write("text"); ?>';

alle 3 sekunden in den php code und öffnet die datei etc etc. nur des mit dem schreiben haut net hin da er nur schreibt wenn des ganze zum ersten mal geladen wird....

Luzandro

OC Addicted
Avatar
Registered: Mar 2006
Location: 2482
Posts: 708
Zitat
var js_var='<? echo write("text"); ?>';
schau dir den code an, den du im browser bekommst - das php wird genau einmal geparsed und ersetzt
Kontakt | Unser Forum | Über overclockers.at | Impressum | Datenschutz