externe JavaScript Datei als .php speichern
samurai
- javascript
0 Encoder1 Felix Riesterer0 Vinzenz Mai0 splinter0 samurai
Moin Zusammen,
ich habe eine externe Javascript Datei mit mehreren Funktionen. Eine Funktion soll aber Daten aus einer Datenbank bearbeiten.
Frage:
kann ich eine externe JavaScript datei als z.b. js.php abspeichern (damit ich dort mit PHP daten aus der Datenbank holen kann) und dann im <head>
mit
<script src="j/js.php" type="text/javascript"></script>
aufrufen.
Habs grad versucht und es klappt, aber macht man das auch so, und mach ich damit vielleicht andere Funktionen in der Datei kaputt?
Danke euch!
Samurai.
Vom Prinzip her ist es dem Browser egal was auf dem Server passiert, wenn er was aufruft. Und dem Server ist wiederum egal was der Browser mit der Ausgabe anstellt wenn er sie bekommt.
mach ich damit vielleicht andere Funktionen in der Datei kaputt?
Was könntest du wo kaputt machen?
Was könntest du wo kaputt machen?
Naja, wenn ich php code in eine html datei packe, wird dieser nicht ausgeführt. (das meinte ich mit "kaputt").
Es könnte ja sein, dass bestimmte javascript befehle in einer php datei nicht ausgeführt werden.
FAZIT:
kann man also sagen, dass mein Vorhaben, also die externe javascript datei als .php abspeichern, ok ist, wenn ich dies in die js.php hinzufüge:
header('Content-type: text/javascript');
?
Wie wird denn das sonst gemacht, wenn externe js dateien dynamisch sein müssen? Etwa so wie ich es vorhabe? Oder gibt es einen besseren weg?
Wie wird denn das sonst gemacht, wenn externe js dateien dynamisch sein müssen? Etwa so wie ich es vorhabe?
Warum nicht? Es spricht ja nichts dagegen das so zu machen. Die Mechanismen die du nutzt sind genau für dein Vorhaben da.
Lieber samurai,
wenn der Browser eine Resource vom Typ text/javascript verlangt, und wenn der Server eben eine solche ausliefert, dann sind beide zunächst einmal zufrieden. Dateinamen sind dabei das, was Namen schon immer waren: Schall und Rauch.
Wenn in der JavaScript-Datei dann irgendein Mist steht, dann wird sich der Browser in der Fehlerkonsole beschweren. Das hat dann aber mit dem Parsen des JS-Codes zu tun und nicht mit der HTTP-Kommunikation zwischen Browser und Server.
Liebe Grüße,
Felix Riesterer.
Hallo,
ich habe eine externe Javascript Datei mit mehreren Funktionen. Eine Funktion soll aber Daten aus einer Datenbank bearbeiten.
[...]
Habs grad versucht und es klappt, aber macht man das auch so, und mach ich damit vielleicht andere Funktionen in der Datei kaputt?
sehr wahrscheinlich möchtest Du das Cachen dieser Ressource unterbinden. Ein sich ständig ändernder Get-Parameter könnte dies bewirken.
Freundliche Grüße
Vinzenz
Moin Moin!
sehr wahrscheinlich möchtest Du das Cachen dieser Ressource unterbinden. Ein sich ständig ändernder Get-Parameter könnte dies bewirken.
Oder wesentlich sauberer passende HTTP-Header.
Alexander
Moin
Frage:
kann ich eine externe JavaScript datei als z.b. js.php abspeichern (damit ich dort mit PHP daten aus der Datenbank holen kann) und dann im <head>
mit
<script src="j/js.php" type="text/javascript"></script>
aufrufen.
Welche Art von Daten du mit PHP generierst ist völlig egal, wichtig ist einfach dass du den entsprechenden Datentyp auch angibst.
Bevor irgendwas geschrieben wird:
header('Content-type: text/javascript');
Habs grad versucht und es klappt, aber macht man das auch so, und mach ich damit vielleicht andere Funktionen in der Datei kaputt?
Was soll bitte "kaputt machen" bedeuten? Entweder wird der Code ausgeführt oder nicht und die Antwort darauf hast du bereits gegeben.
Danke euch!
Samurai.
Bevor irgendwas geschrieben wird:
header('Content-type: text/javascript');
Danke!
FAZIT:
kann man also sagen, dass mein Vorhaben, also die externe javascript datei als .php abspeichern, ok ist, wenn ich dies in die js.php hinzufüge:
`header('Content-type: text/javascript');`{:.language-php} ?
Wie wird denn das sonst gemacht, wenn externe js dateien dynamisch sein müssen? Etwa so wie ich es vorhabe, oder gibt es einen besseren Weg?
> Was soll bitte "kaputt machen" bedeuten? Entweder wird der Code ausgeführt oder nicht und die Antwort darauf hast du bereits gegeben.
>
Naja, kaputt heißt, dass befehle aus welchen gründen auch immer, nicht ausgeführt werden, wie z.b. php code in einer html datei.
Lieber samurai,
FAZIT:
kann man also sagen, dass mein Vorhaben, also die externe javascript datei als .php abspeichern, ok ist, wenn ich dies in die js.php hinzufüge:
header('Content-type: text/javascript');
?
so einfach ist das nicht (Syntax von PHP und JS auseinanderhalten!), aber im Grunde denkst Du richtig.
Wie wird denn das sonst gemacht, wenn externe js dateien dynamisch sein müssen? Etwa so wie ich es vorhabe, oder gibt es einen besseren Weg?
Also ich baue mir immer eine echte JavaScript-Datei, in der ich eventuell Platzhalter habe, die dann vom PHP-Script "ausgefüllt" werden, bevor die Datei an den Browser versandt wird.
Liebe Grüße,
Felix Riesterer.
Hey Felix,
erstmal vielen Dank für die Hilfestellungen!
header('Content-type: text/javascript');
?so einfach ist das nicht (Syntax von PHP und JS auseinanderhalten!), aber im Grunde denkst Du richtig.
Was meinst du mit Syntax auseinanderhalten?
Etwa so? (in zeile 1 der js.php Datei):
<?php header('Content-type: text/javascript'); ?>
Und dann folgt der normale JS Code + Php Code Schnipsel...
ist das right?
Danke dir!
Lieber samurai,
<?php header('Content-type: text/javascript'); ?>
Und dann folgt der normale JS Code + Php Code Schnipsel...
ist das right?
yup.
Liebe Grüße,
Felix Riesterer.