|
|
Includen .... |
eotbc
__~*eotbc*~__
Dabei seit: 03.07.2003
Beiträge: 333
|
|
Includen .... |
|
Hi!
Ich bräuchte dringend hilfe bei einem Design....
1.) Das Design : http://www.designnation.de/webtemplate6/
Leider habe ich (noch
) kaum Ahnung von Php und müsste dringend wissen wie ich Seiten in dieses "Hauptfenster" includen kann.
-> Also wenn man in der Navi einen Punkt auswählt , das die Seite dann in dier index.php included wird. <-
[Die Frage gabs warschlich schon öfters aber ich habe leider keine passende Antwort gefunden.... ]
THX
__________________ Wer kämpft, kann verlieren. Wer nicht kämpft, hat schon verloren!
[In diesem Sinne...]
eotbc
|
|
12.02.2004 19:46 |
|
|
assasine
BlackBoarder
Dabei seit: 09.01.2004
Beiträge: 857
Herkunft: made by mama
|
|
also hier ein tut dazu:
Navigation mit PHP
von Michael Schlüter
Frames sind unter Webdesignern nicht sonderlich beliebt. Es geht aber auch anders - mit PHP! Denn damit kann man ganz einfach fremde Dateien einladen.
Benötigt:
Webserver mit PHP3 (oder höher), HTML-Kenntnisse
Ziel:
Wir wollen eine Navigation, die funktioniert wie Frames, jedoch aussieht wie Einzelseiten. Beispiel: Bis jetzt hatten wir zwei Frames: links die Navigation, rechts der Inhalt. Da aber beide Dateien eine gewisse Länge haben entstehen zwei unschöne Scrollbalken.
Nun soll die Seite so aussehen, als handele es sich hier um nur eine Datei (mit Navigation und Inhalt), es soll sich aber wirklich um zwei Dateien handeln, damit wir mit Leichtigkeit einen der beiden Teile ändern können. Dies ist gerade bei der Navigation sehr wichtig, da man sonst beim hinzufügen eines Links, alle Dokumente ändern will.
Mit PHP ist es nun möglich zwei Dateien zu erstellen und diese "verschmelzen" zu lassen.
So wird's gemacht:
Zuerst erstellen wir eine Datei in der alle Teile sind, die ständig angezeigt werden. Am besten setzt man auf diese Seite eine Tabelle und lässt den Bereich, wo nachher die anderen Dateien erscheinen sollen leer. Diese wird unter dem Namen index.php3 (die Dateiendung ist dabei zwingend).
Nun erstellt man eine Seite die beim Start in unseren "Frame" geladen werden soll (start.html) sowie eine weitere Datei, die eine Unterseite darstellen soll (seite1.html).
In der index.php3 müssen nun zwei Änderungen vorgenommen werden. Zwischen <head> und </head> wird der folgende Text eingefügt:
Code
<?php
if ($page=="") $page="start.html";
?>
Damit wird festgelegt, welche Seite als erstes in unseren "Frame" geladen werden soll (hier: start.html).
Nun fügen wir an der Stelle wo die Startseite und alle weiteren Seiten nachher geladen werden sollen, folgendes ein:
Code
<?php
$fd = fopen($page, "r");
while (!feof($fd)) {
echo fgets($fd, 4096);
}
fclose ($fd);
?>
Dieser Text kann unverändert stehen bleiben.
Wenn man die Seite nun vom Webserver aufruft (geht nicht auf dem eigenen Rechner), sieht man die start.html an der Stelle in die index.php3 eingefügt, wo wir den obigen Quellcode angegeben haben.
Um nun eine andere Seite anstatt der start.html zu sehen benutzt man folgenden Link:
<a href="index.php3?page=seite1.html">
Hiermit wird nun die Datei seite1.html in unseren Frame geladen. Nun kann man mit den Link index.php?page + die zu ladende Datei (auch absoluter Pfad möglich) in den "Frame" laden.
Wenn man diese Datei jetzt aufruft und wirft einen Blick in den Quelltext wird man sehen, dass die beiden Dateien zu einer verschmolzen sind.
Fehler:
- Beim Aufruf wird keine Datei in den Frame geladen. Möglicher Fehler: Der Webserver unterstützt kein PHP3.
- Es kommt eine Fehlermeldung auf der Seite: Die aufzurufende Datei wurde nicht gefunden.
- Es werden Javascript - Fehler angezeigt und das Layout ist total verrutscht. Kann passieren wenn die Seite in einem richtigen Frame geladen wird.
|
|
12.02.2004 21:30 |
|
|
eotbc
__~*eotbc*~__
Dabei seit: 03.07.2003
Beiträge: 333
Themenstarter
|
|
Yo Danke!
Wenns nicht klappen sollte , meld ich mich
__________________ Wer kämpft, kann verlieren. Wer nicht kämpft, hat schon verloren!
[In diesem Sinne...]
eotbc
|
|
13.02.2004 13:41 |
|
|
assasine
BlackBoarder
Dabei seit: 09.01.2004
Beiträge: 857
Herkunft: made by mama
|
|
@ LX
kannst du mir einen Gefallen tun??
Weil ich noch nich so viel php kann könntest du das was du gerade gesagt anhand des Tutorials erkären??
z.B so: statt blablabla gibt man dann blabla ein usw.
weil das tut hab ich verstanden aber was du geschrieben hast nicht! Und iochmöcht auch nich das meine neue Seite gehackt usw. wird!
|
|
13.02.2004 14:20 |
|
|
LX
El Comandante en Jefe
Dabei seit: 25.11.2001
Beiträge: 5.372
Herkunft: Berliner Bronx
|
|
Weiß net, was daran so schwierig ist...
code: |
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
|
[massig HTML Quellcode]
<!-- Beginn der Navigation -->
<a href="index.php?id=0">Home</a><br>
<a href="index.php?id=1">Downloads</a><br>
<a href="index.php?id=2">Links</a><br>
<a href="index.php?id=3">Gätebuch</a><br>
<!-- Ende Navigation -->
[noch mehr HTML]
<!-- Beginn Content-Bereich -->
<?php
switch ($_GET['id'])
{
case 1: include("downloads.html"); break;
case 2: include("links.html"); break;
case 3: include("guestbook.html"); break;
default: include("home.html"); break;
}
?>
<!-- Ende Content-Bereich -->
[restlicher HTML-Code] |
|
Dabei ist natürlich zu beachten, dass blubb.html nicht die komplette HTML-Seite mitsamt HEAD etc. enthält, sondern wirklich nur den Teil, der in den Contentbereich eingefügt werden soll (eine Tabelle z.B.).
__________________ JS-Games.de - Misled Scripting Skills Gone Mad | Meine Filmkritiken | Urban Photography
Kommt mal in den IRC-Channel: irc.eu.freenode.net | Port 6667 | #blackboard
"Ever tried. Ever failed. No matter.
Try again. Fail again. Fail better."
- Samuel Beckett
|
|
15.02.2004 14:42 |
|
|
eotbc
__~*eotbc*~__
Dabei seit: 03.07.2003
Beiträge: 333
Themenstarter
|
|
Yo klappt Super
Jetzt müsste es eigentlich mit dem Includen funktionieren
Sei bedankt -> LX
__________________ Wer kämpft, kann verlieren. Wer nicht kämpft, hat schon verloren!
[In diesem Sinne...]
eotbc
|
|
15.02.2004 16:48 |
|
|
eotbc
__~*eotbc*~__
Dabei seit: 03.07.2003
Beiträge: 333
Themenstarter
|
|
Sorry aber eine Frage hab ich noch...
Wie kann ich das Verzeichniss , der Datei die Includet werden soll , wechseln??
Die Datei liegt im scripte ordner \scripte\datei.html ...
Beispiel:
normal :
code: |
1:
|
case 1: include("123.html"); break; |
|
geht nicht :
code: |
1:
|
case 1: include("\scripte\123.html"); break; |
|
....
__________________ Wer kämpft, kann verlieren. Wer nicht kämpft, hat schon verloren!
[In diesem Sinne...]
eotbc
|
|
15.02.2004 17:27 |
|
|
LX
El Comandante en Jefe
Dabei seit: 25.11.2001
Beiträge: 5.372
Herkunft: Berliner Bronx
|
|
Vergiss den Backslash, das Zeichen existiert nicht
Korrekte Pfadangaben im Internet werden mit einem normalen Slash gemacht, also wäre
code: |
1:
|
include("scripte/blubb.php"); |
|
korrekt. Vorsicht auch mit dem Slash am Anfang (/blah/blubb), dieser wird für absolute Pfadangaben verwendet.
__________________ JS-Games.de - Misled Scripting Skills Gone Mad | Meine Filmkritiken | Urban Photography
Kommt mal in den IRC-Channel: irc.eu.freenode.net | Port 6667 | #blackboard
"Ever tried. Ever failed. No matter.
Try again. Fail again. Fail better."
- Samuel Beckett
|
|
15.02.2004 17:33 |
|
|
eotbc
__~*eotbc*~__
Dabei seit: 03.07.2003
Beiträge: 333
Themenstarter
|
|
*löl*
-> Ich bin sichtlich deprimiert
<-
Ich hatte das aufm anderen Board so gelesen...
Aber es gibt nur 1 "richtiges" Board.... ^^
__________________ Wer kämpft, kann verlieren. Wer nicht kämpft, hat schon verloren!
[In diesem Sinne...]
eotbc
|
|
15.02.2004 17:39 |
|
|
LX
El Comandante en Jefe
Dabei seit: 25.11.2001
Beiträge: 5.372
Herkunft: Berliner Bronx
|
|
Nein, das kannste komplett weglassen. Alles was du brauchst (außer dem HTML-Gerüst drumrum) steht in meinen Beiträgen.
__________________ JS-Games.de - Misled Scripting Skills Gone Mad | Meine Filmkritiken | Urban Photography
Kommt mal in den IRC-Channel: irc.eu.freenode.net | Port 6667 | #blackboard
"Ever tried. Ever failed. No matter.
Try again. Fail again. Fail better."
- Samuel Beckett
|
|
15.02.2004 18:34 |
|
|
assasine
BlackBoarder
Dabei seit: 09.01.2004
Beiträge: 857
Herkunft: made by mama
|
|
und wie kann ich die Startseite bestimmen ich mein das muss ich doch irgentwie angeben sonst weiß man ja säter nich was als erstes angezeigt wird!!
|
|
15.02.2004 18:56 |
|
|
LX
El Comandante en Jefe
Dabei seit: 25.11.2001
Beiträge: 5.372
Herkunft: Berliner Bronx
|
|
Das ist der default-Eintrag in der switch()-Anweisung.
__________________ JS-Games.de - Misled Scripting Skills Gone Mad | Meine Filmkritiken | Urban Photography
Kommt mal in den IRC-Channel: irc.eu.freenode.net | Port 6667 | #blackboard
"Ever tried. Ever failed. No matter.
Try again. Fail again. Fail better."
- Samuel Beckett
|
|
15.02.2004 19:00 |
|
|
assasine
BlackBoarder
Dabei seit: 09.01.2004
Beiträge: 857
Herkunft: made by mama
|
|
jo jetzt damit ich bald anfangen kann das zu üben noch die letzten Fragen!
Wie wird bestimmt wo das erscheinen soll was erscheinen soll! z.B. in ner Tabelle
und wo müssen die php teile genau eingefügt werden?? weil bei dem andren wars ja im head und das andere in der tabelle wo das erscheinen sollte!
das müsste vorerst mal alles gewesen sein und wenn ich noch pros. habe frrag ich noch mal
|
|
15.02.2004 19:50 |
|
|
assasine
BlackBoarder
Dabei seit: 09.01.2004
Beiträge: 857
Herkunft: made by mama
|
|
jo klar. Danke!!!
aber ***nichtöt*** für was steht case?? die ID?
|
|
15.02.2004 20:46 |
|
|
|
|
|
|