HTML Datei
jäger
- html
Hallo liebe Forenbesucher bzw. Nutzer,
ich brauche wiedermal Eure Hilfe; undzwar möchte ich der übersichthalber einige Teile meines HTML Codes in externe Dateien ausgliedern und diese per JAVASCRIPT oder PHP einfügen, nur leider funktioniert das ganze überhaupt nicht.
Was ich schon ausprobiert habe sind folgende Sachen.
<?php include 'test.php'; ?>
bzw.
<script type="text/javascript" src="test.js"></script>
Eine kleine Bemerkung noch: in der Datei test.php und test.js steht nur der REINE HTML CODE, den ich auslagern möchte.
Vielen Dank für Eure Hilfe
jäger
<?php include 'test.php'; ?>
was war das ergebnis dieses versuchs?
<script type="text/javascript" src="test.js"></script>
das wird so nicht funktionieren
<?php include 'test.php'; ?>
was war das ergebnis dieses versuchs?
gar nichts, da kam leider nichts. ich habe in der test.php datei meine navileiste, der nur in HTML CODE ist ausgelagert. Bei der obigen Methode passierte gar nichts, die navileiste wurde gar nicht angezeigt.
gruß
jäger
gar nichts, da kam leider nichts. ich habe in der test.php datei meine navileiste, der nur in HTML CODE ist ausgelagert. Bei der obigen Methode passierte gar nichts, die navileiste wurde gar nicht angezeigt.
was stand danach im quelltext?
gar nichts, da kam leider nichts. ich habe in der test.php datei meine navileiste, der nur in HTML CODE ist ausgelagert. Bei der obigen Methode passierte gar nichts, die navileiste wurde gar nicht angezeigt.
was stand danach im quelltext?
was für ein quelltext meinst du denn?
ich wollte meine navileiste in eine externe datei auslagern, der nur reines html code ist. ich habe da nichts verändert. wenn du mit dem quelltext die php datei meinst steht da:
<div id="blabla">
<a href="blablabbla.html">BLABLA</a>
</div>
viele grüße cemil
was für ein quelltext meinst du denn?
den fertigen, vom server gelieferten quelltext, der durch php zusammengbaut wurde (sprich das, was im browser ankommt
[...] steht da:
<div id="blabla">
<a href="blablabbla.html">BLABLA</a>
</div>
ich denke nicht, dass das obriges steht
was für ein quelltext meinst du denn?
den fertigen, vom server gelieferten quelltext, der durch php zusammengbaut wurde (sprich das, was im browser ankommt
da kommt gar nichts an, echt nicht, sonst hätte ich aus was damit anfangen können. meine navileiste wird einfach nicht angezeigt.
[...] steht da:
<div id="blabla">
<a href="blablabbla.html">BLABLA</a>
</div>
ich denke nicht, dass das obriges steht
wie würde es sonst noch gehen?
viele grüße
jäger
da kommt gar nichts an, echt nicht, sonst hätte ich aus was damit anfangen können. meine navileiste wird einfach nicht angezeigt.
ich glaub nicht, dass NICHTS ankommt wenn du "etwas" reinschreibst - und um das endresultat des quelltexts der im browser ankommt, gehts
ein onlinebeispiel könnte helfen
wie würde es sonst noch gehen?
ich hab keine ahnung, aber ich bin mir 100%ig sicher dass in deinem quelltext nicht irgendwas mit BLABLA steht sondern etwas sinnvolles (oder du denkst das zumindest) und genau da sollst du nachsehen ob das, was du eigentlich erwartest, auch drinnen steht
wenn anstelle deines menüs im quelltext <?php include 'test.php'; ?> steht wird das menü nicht angezeigt, wenn da wirklich NICHTS steht, wird es natürlich auch nicht angezeigt, wenn da aber die blabla-sache steht, wird defintiv die blah-blah sache angezeigt
wenn anstelle deines menüs im quelltext <?php include 'test.php'; ?> steht wird das menü nicht angezeigt, wenn da wirklich NICHTS steht, wird es natürlich auch nicht angezeigt, wenn da aber die blabla-sache steht, wird defintiv die blah-blah sache angezeigt
doch in der test.php datei stehe ein html abschnitt.
anbei ein link, wo du es dir anschauen kannst, wie es aussieht, wenn ich die html datei ganz ist und keine teile daraus ausgelagert sind.
http://www.dernek.taskiran.net/yeniindex.html
hier der link, womit ich meine probleme habe, die obere navileiste wird garnicht ausgelagert, obwohl die test.php datei am gleichen ort ist wie die html datei.
http://www.dernek.taskiran.net/indexiki.html
viele grüße
jäger
http://www.dernek.taskiran.net/indexiki.html
da steht im html-quelltext "<?php include 'test.php'; ?>" - ein indiz dafür, dass du a) keinen php-interpreter hast oder b) (wahrscheinlicher) der einfach keine ressourcen mit der endung .html behandelt - versuche die datei in .php umzubenennen oder ändere deine serverkonfiguration, sodass auch .html durch den php-interpreter geschickt wird
http://www.dernek.taskiran.net/indexiki.html
da steht im html-quelltext "<?php include 'test.php'; ?>" - ein indiz dafür, dass du a) keinen php-interpreter hast
doch doch der server ist php fähig, ich habe da schon php formulare und etc. abschicken können.
oder b) (wahrscheinlicher) der einfach keine ressourcen mit der endung .html behandelt - versuche die datei in .php umzubenennen
die datei ist doch eine php datei.
oder ändere deine serverkonfiguration, sodass auch .html durch den php-interpreter geschickt wird
das ist auch eingestellt, du hast ja selber gesehen, dass dort kein fehler angezeigt wird.
verstehe ich nicht so ganz, gibt es alternativen dazu?
gruß
jäger
Hi,
oder b) (wahrscheinlicher) der einfach keine ressourcen mit der endung .html behandelt - versuche die datei in .php umzubenennen
die datei ist doch eine php datei.
Nein, deine index-Datei hat die Endung .html - und normalerweise sind Webserver so konfiguriert, dass sie solche Dateien nicht durch den PHP-Parser schicken.
MfG ChrisB
TAUSEND TAUSEND TAUSEND DANK HAT GEKLAPPT
GRUESSE
JAEGER
Mahlzeit jäger,
TAUSEND TAUSEND TAUSEND DANK HAT GEKLAPPT
Mal wieder ein Beispiel von "Kaum macht man's richtig, funktioniert's ..." - und ich schätze, eine kräftige Portion RTFM hätte sicher dafür gesorgt, dass es früher "Klick" bei Dir gemacht hätte.
MfG,
EKKi
Hi,
hier der link, womit ich meine probleme habe, die obere navileiste wird garnicht ausgelagert, obwohl die test.php datei am gleichen ort ist wie die html datei.
http://www.dernek.taskiran.net/indexiki.html
Wenn du dir davon mal den Quelltext anschauen wuerdest, wuerdest du sehen, dass da immer noch
<div id="linkalanibir">
<?php include 'test.php'; ?>
drin steht - also wurde das Dokument gar nicht durch den PHP-Parser geschickt, was bei der Endung .html deines Dokumentes auch der Normalfall ist.
Benenne deine indexiki.html doch mal in indexiki.php um - und dann schauen wir weiter ...
MfG ChrisB
Hi, ich glaube du gehst das ganze Falsch an.
Nur weil du einen Teil auslagerst, und wieder "includest" heißt es nicht, dass das, was in der ausgelagerten Datei steht, auch wieder so angezeigt wird.
Dazu musst du es aufrufen.
Beispiel:
Augelagerte Datei (aus.js):
<script type="text/javascript">
function xyz() {
var name = Max;
var alter = 30;
var antwort = name + " ist " + alter + " Jahre alt.";
document.write(antwort);
}
</script>
Normale Datei (index.html):
<html>
<head><title></title>
<script type="text/javascript" src="aus.js"></script>
<head>
<body>
<div><script type="text/javascript"> xyz(); </script></div>
</body>
</html>
Ausgabe im Browser:
Max ist 30 Jahre alt.
PHP ist fast das gleiche!
Du kannst auch ganze HTML seiten einbetten, und dann mit "document.write
" ausgeben lassen.
Du kannst auch ganze HTML seiten einbetten, und dann mit "
document.write
" ausgeben lassen.
anmerkung:
document.write ist eine "furchtbar blöde idee" - und das in mehrerlei hinsicht
einerseits greift document.write direkt in den render- und reflow-prozess des browsers ein, also an der stelle, wo der html-code bereits generiert wird, aber unter umständen noch nicht vollständig geladen wurde - dh es wird ständig zwischen layout-engine und javascript-engine gewechselt bzw es wird gleichzeitg gearbeitet - einen langsamen rechner oder browser bringt das zum weinen
andererseits funktioniert document.write in xml absolut nicht, da sich ein xml-parser auf die wohlgeformtheit des codes verlässt, sich aber mittels document.write theoretisch nicht wohlgeformter code produzieren lässt, der aber eigentlich valides xml-darstellt
<div>
<script type="text/javascript"><[!CDATA[document.write('<strong>');]]></script>
blah
<script type="text/javascript"><[!CDATA[document.write('</strong>');]]></script>
</div>
obriges beispiel ist wohlgeformt, wenn aber zuerst eine javascript-engine drüberläuft oder dies sogar zur laufzeit passiert, wäre das strong-element geöffnet aber nicht korrekt verschachtelt, da das end-tag erst im zweiten document-write folgt
das daraus resultierende html wäre (betrachtet man den gernerieten quellext) dann zwar theoretisch valide, den xml-parser macht das aber traurig
nachdem also bei einem xml-fähigen browser sofort das xml-file gerendert wird, gib es den oben beschriebenen wechsel zwischen dem tag-soup-parser der layout-engine und der javascript-engine garnicht - ergo document.write kann nicht ausgeführt werden, da es zu zeitpunkt, wo die javascript-engine erstmals ran darf schon zu spät ist
aus diesen gründen eignet es sich, auch wenn man nichts als xml ausliefert, sich dennoch schon anzugewöhnen, auf document.write völlig zu verzichten und entsprechende alternativen (zb innerHTML) zu verwenden, damit mans in zukunft leichet hat und leute mit langsamen browsern nicht beleidigt
Mahlzeit jäger,
Eine kleine Bemerkung noch: in der Datei test.php und test.js steht nur der REINE HTML CODE, den ich auslagern möchte.
Du solltest in eine Datei mit der Endung .php hauptsächlich PHP-Code, in eine Datei mit der Endung .js NUR Javascript-Code tun. Für reinen HTML-Code sind Dateien mit der Endung .html da ...
MfG,
EKKi
Du solltest in eine Datei mit der Endung .php hauptsächlich PHP-Code, in eine Datei mit der Endung .js NUR Javascript-Code tun. Für reinen HTML-Code sind Dateien mit der Endung .html da ...
wobei hier anzumerken ist, dass im http-kontext die dateiendung eigentlich "scheissegal" ist, aber es für den autor der seite durchaus einfacher, wenn eine css-datei .css als endung hat, eine javscript-datei .js usw
Mahlzeit suit,
wobei hier anzumerken ist, dass im http-kontext die dateiendung eigentlich "scheissegal" ist, aber es für den autor der seite durchaus einfacher, wenn eine css-datei .css als endung hat, eine javscript-datei .js usw
Das ist richtig. Der OP machte nur auf mich den Eindruck, er wüsste eigentlich überhaupt gar nicht richtig, welche Datei eigentlich was tut, wo wie geparst, eingebunden und/oder ausgeführt wird ... und da helfen eindeutige Dateierweiterungen und klare Benennungen doch ziemlich.
MfG,
EKKi
@@suit:
wobei hier anzumerken ist, dass im http-kontext die dateiendung eigentlich "scheissegal" ist,
Wobei hier anzumerken ist, dass es im HTTP-Kontext gar keine Dateiendungen gibt. Wie auch; es gibt ja keine Dateien.
aber es für den autor der seite durchaus einfacher, wenn eine css-datei .css als endung hat, eine javscript-datei .js usw
Vor allem auch für den Admin des Webservers (muss ja nicht dieselbe Person sein).
Live long and prosper,
Gunnar