per include dateien in 2 verschiedenen div-containern nachladen?
Esmy
- php
0 afra0 Esmy
0 Jeena Paradies0 Esmy0 Jeena Paradies0 Esmy
0 Ashura
0 wahsaga
Hallo zusammen,
ich hab folgendes Anliegen und hoffe jemand kann mir helfen:
Ich lade innerhalb eines Div-Containers html-Seiten per include nach:
<?
switch($section){
case "einleitung": include("einleitung.html"); break;
case "wasauchimmer": include("wasauchimmer.html"); break;
default: include("einleitung.html"); break;
}
?>
und rufe einfach per Link über:<a href="index.php?section=einleitung" title="einleitung">
Funktioniert auch alles bestens. Nun habe ich aber am Rand einen zweiten DIV-Container, in dem sich Bilder befinden und ich würde gern, bei anklicken eines Links auch diese "neu laden". Also zu jedem link sowohl eine neue Seite als auch neue Bilder. Allerdings funktioniert ja ein Aufruf in der Art von: "index.php?section=einleitung§ion=bilder" nicht.
Gibt es sonst eine Lösung beide Inhalte nachzuladen?
Vielen Dank schonmal
Esmy
Hallo Esmy!
Funktioniert auch alles bestens. Nun habe ich aber am Rand einen zweiten DIV-Container, in dem sich Bilder befinden und ich würde gern, bei anklicken eines Links auch diese "neu laden". Also zu jedem link sowohl eine neue Seite als auch neue Bilder. Allerdings funktioniert ja ein Aufruf in der Art von: "index.php?section=einleitung§ion=bilder" nicht.
Deine zweite Angabe von section führt dazu, dass die Zuweisung zur ersten überschrieben wird. Verwende zweierlei Übergaben im Querystring. Maskiere Deine Ampaersants. (& zu &)
Schönen Gruß
Afra
Deine zweite Angabe von section führt dazu, dass die Zuweisung zur ersten überschrieben wird. Verwende zweierlei Übergaben im Querystring. Maskiere Deine Ampaersants. (& zu &)
Schönen Gruß
Afra
Hallo Afra,
ja, das ist naheliegend (manchmal sieht man den Wald vor lauter Bäumen nicht;)
Hat bestens funktioniert. Danke
Esmy
Hallo,
case "einleitung": include("einleitung.html"); break;
case "wasauchimmer": include("wasauchimmer.html"); break;
default: include("einleitung.html"); break;
Dir ist bewusst, dass hier auch der PHP-Parser anspringt und PHP-Code der in den HTML Dateien enthalten ist interpretiert wird? So wie ich das sehe möchtest du das warscheinlich gar nicht und möchtest eher etwas wie das hier nutzen:
case 'einleitung': echo [link:http://de.php.net/file_get_contents@title=file_get_contents]('einleitung.html');
Funktioniert auch alles bestens. Nun habe ich aber am Rand einen zweiten DIV-Container, in dem sich Bilder befinden und ich würde gern, bei anklicken eines Links auch diese "neu laden". Also zu jedem link sowohl eine neue Seite als auch neue Bilder. Allerdings funktioniert ja ein Aufruf in der Art von: "index.php?section=einleitung§ion=bilder" nicht.
Dann musst du das einfach nur implementieren in etwa würde das ganze so aussehen:
<html>
<head>
<title>Test</title>
</head>
<body>
<div id="content">
[code lang=php] <?php
switch ($section) {
case 'einleitung': echo file_get_contents('einleitung.html'); break;
case 'foo': echo file_get_contents('foo.html'); break;
default: include("einleitung.html"); break;
}
?>
</div>
<div id="bilder">
<?php
switch ($section) {
case 'einleitung': echo file_get_contents('bilder-einleitung.html'); break;
case 'foo': echo file_get_contents('bilder-foo.html'); break;
default: include("bilder-einleitung.html"); break;
?>
</div>
</body>
</html>[/code]
Grüße
Jeena Paradies
Hallo,
case "einleitung": include("einleitung.html"); break;
case "wasauchimmer": include("wasauchimmer.html"); break;
default: include("einleitung.html"); break;
Dir ist bewusst, dass hier auch der PHP-Parser anspringt und PHP-Code der in den HTML Dateien enthalten ist interpretiert wird? So wie ich das sehe möchtest du das warscheinlich gar nicht und möchtest eher etwas wie das hier nutzen:
case 'einleitung': echo [link:http://de.php.net/file_get_contents@title=file_get_contents]('einleitung.html');
Hallo Jeena
ähm, du machst mich stutzig? Was ist schlecht daran, dass php-code in der html-Datei einfach geparst wird. (also ich hab die Datei halt einfach in .php statt .html umbenannt. Entstehen irgendwelche Nachteile dadurch? Der Seitenaufruf funktioniert ja im Moment so, wie ich das haben möchte (zumindest in Mozilla,Netscape und Explorer).
Gruß
Esmy
Hallo,
Ja readfile() wäre wohl noch sinnvoller wie Ashura anmerkte.
ähm, du machst mich stutzig? Was ist schlecht daran, dass php-code in der html-Datei einfach geparst wird. (also ich hab die Datei halt einfach in .php statt .html umbenannt. Entstehen irgendwelche Nachteile dadurch? Der Seitenaufruf funktioniert ja im Moment so, wie ich das haben möchte (zumindest in Mozilla,Netscape und Explorer).
Es geht eigentlich nur um die unnötigen resourcen, die verbraucht werden wenn der PHP-Parser auch noch unnötig auf die html seite angeworfen wird. Aber ja ich gebe zu, das hat wohl bei deinem Unterfangen eher Philosofische Natur, da man den Unterschied in der Geschwindigkeit mit bloßem Auge nicht sehen können wird. Bei größeren Projekten könnte das durchaus anders aussehen.
Grüße
Jeena Paradies
Es geht eigentlich nur um die unnötigen resourcen, die verbraucht werden wenn der PHP-Parser auch noch unnötig auf die html seite angeworfen wird. Aber ja ich gebe zu, das hat wohl bei deinem Unterfangen eher Philosofische Natur, da man den Unterschied in der Geschwindigkeit mit bloßem Auge nicht sehen können wird. Bei größeren Projekten könnte das durchaus anders aussehen.
Grüße
Jeena Paradies
phu, das beruhigt mich aber jetzt ungemein. Naja, dann behalte ich deine Lösung am besten im Hinterkopf, falls das Projekt mal astronomische Ausmaße annehmen sollte;)
Danke und Gruß
Esmy
Hallo Jeena.
case 'einleitung': echo [link:http://de.php.net/file_get_contents@title=file_get_contents]('einleitung.html');
Warum nicht einfach readfile?
Die besondere Eigenschaft von file_get_contents, lediglich die jeweilige Datei auszulesen aber nicht gleich auszugeben wird ja hier nicht genutzt.
Einen schönen Mittwoch noch.
Gruß, Ashura
Hallo,
Warum nicht einfach readfile?
Hey meinst du ich kenne alle PHP Funktionen auswendig? ;-)
Grüße
Jeena Paradies
Hallo Jeena.
Warum nicht einfach readfile?
Hey meinst du ich kenne alle PHP Funktionen auswendig? ;-)
Natürlich. Oder bist du etwa nicht 1337?
Einen schönen Mittwoch noch.
Gruß, Ashura
Hallo,
Natürlich. Oder bist du etwa nicht 1337?
*lol* ne nicht wenn es um PHP geht ;-).
Grüße
Jeena Paradies
hi,
Ich lade innerhalb eines Div-Containers html-Seiten per include nach
Damit meinst du doch hoffentlich keine kompletten HTML-Dokumente, sondern höchstens Dokument-Fragmente?
gruß,
wahsaga
hi,
Ich lade innerhalb eines Div-Containers html-Seiten per include nach
Damit meinst du doch hoffentlich keine kompletten HTML-Dokumente, sondern höchstens Dokument-Fragmente?
gruß,
wahsaga
*hüstel* wie definierst du "komplette HTML-Dokumente"? Ich hab im Moment nur Text, den ich nachlade. Spiele aber mit dem Gedanken noch ein paar Bilder dazuzutun. Wäre das Frevel? ;)
Hast du vielleicht eine andere Lösung, außer JS zu benutzen oder IFrames zu benutzen?
Gruß
Esmy
hi,
*hüstel* wie definierst du "komplette HTML-Dokumente"?
DTD-Angabe, <html>, <head>, <body> etc. - ein komplettes, eigenständiges HTML-Dokument eben.
Ich hab im Moment nur Text, den ich nachlade.
Das ist OK.
Spiele aber mit dem Gedanken noch ein paar Bilder dazuzutun. Wäre das Frevel? ;)
Nein, wäre auch OK.
Viele Anfänger machen nur gerne den Fehler, komplette Dokumente in andere per include o.ä. einzubinden - und dabei kommen dann Nonsense-Dokumente heraus, die alle in einem HTML-Dokument einmaligen Bestandteile mehrfach enthalten. Und da mir aus deiner Formulierung nicht ganz klar hervorging, ob du das so machst oder nicht, fragte ich nach.
gruß,
wahsaga