suche code oder internetseite für siteverwaltung
lima-city → Forum → Programmiersprachen → PHP, MySQL & .htaccess
anfrage
arbeit
aufruf
code
datei
erstellen
file
index
menge
neuling
ordner
page
pfad
schritt
speichern
standard
stehen
tag
teil
url
-
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Hallo
1. einen neuen Ordner machen z.B. seiten/
und dort die Seiten speichern z.B. xyz.html
und standard.html (oder andere Datei) für Aufrufe ohne &site in der URL
1.1 Achtung, die Seiten zum einfügen dürfen keine head und body-tag haben,
wenn sie in eine Seite geladen werden, die ja schon selber head-Teil und Body-Tag hat
2. in der index.php an die Stelle, wo die Seiten eingefügt werden einfügen:
<?php $pfad = "seiten/"; // ------ Ordner in dem die Seiten liegen mit Slash / am Ende ----- if ( isset($_GET['seite']) ) { include($pfad.$_GET['seite']); // ---- Seite je nach Anfrage includen ----- } else { // ------ Standard-Aufruf ohne Übergabe von seite ------ include($pfad."standard.html"); // ---- die Standard-Seite includen ----- } ?>
3. In Deiner Navigation entsprechende Links setzen
wie z.B. index.php?seite=abcde.html
-------------
(b) kleine Verbesserung wäre die Aufrufe ohne .html zu machen
und die Datei-Endung beim includen anfügen
Bsp: index.php?seite=abcde
und dann im Code die eine Zeile so
include($pfad.$_GET['seite'].".html"); // ---- Seite je nach Anfrage includen -----
wenn (b) dann müssen alle Dateien im Ordner der Seiten auf .html enden
alternativ können das auch alles .php Seiten sein, dann den Ender anpassen
include($pfad.$_GET['seite'].".php"); // ---- Seite je nach Anfrage includen -----
entsprechendes gilt für die Standard-Datei
nicht vergessen: aufpassen, das nicht Head-Teil und Body-Tag in den zu includenden Seiten ist wenn die Seite auf der es includet wird schon selber Head und Body-Tag hat
(c) Man kann natürlich auch den PHP-Code alleine (ohne HEAD und BODY-TAG) als index.php speichern
dann müssen aber natürlich die zu includeten Seiten alle vollwertig eigenständige HTML-Seiten sein
also dann mit HEAD-Teil und Body-Tag
edit: evtl. so wie (c) sogar besser,
weil dan kann man je Aufruf andere Metatags, etc. machen
... und mit (b) ist einfach schönere URLs
... ich hoffe es ist verständlich :)
Beitrag zuletzt geändert: 24.8.2009 14:21:30 von gamesfun -
klappt bei mir leider nicht,
ich hab alles so gemacht, aber dann gibt er bei mir
nur ne leere Seite aus, die eingebundene Seite is mit html, vielleicht liegts dadran, dass dann doppelter head, title etc.?
sieht so aus:
<html> <head> <title>Test</title> </head> <body> TESTTEXT </body> </html>
-
Wenn du auf deiner index.php schon <html><head></head>.. stehen hast, benötigst du auf den include '';-Seiten kein <html><head></head>... mehr.
Du fügst ja damit lediglich neuen Content ein und öffnest keine neue Seite.
wenn du eine Seite per URL-Parameter einbinden willst solltest du das so machen:
<html> <head> <title>Meine tolle Page</title> <body> <ul class="navi"> <li> <a title="link1" href="?page=new">News</a> </li> <li> <a title="link2" href="?page=other">Andere</a> </li> </ul> <div class="content"> <?php $file = $_GET['page'].".html"; if(file_exists($file)) include "".$file.""; ?> </div>
damit prüfst du ob die Datei auf deinem Webspace bzw. im selben Verzeichnis liegt. Anderst könnte man z.B. "loesche_alle_daten_von_nicoa.php" ausführen auf deiner Site
Ich habe das hier "$file = $_GET['page'].".html";" mit Absicht so geschrieben, da keiner wissen muss ob es sich um eine .php oder .html Seite handelt, außerdem sollten in der URL so wenig Infos wie möglich stehen.
Ich hoffe das Hilft weiter
Grüsse
Color
Beitrag zuletzt geändert: 18.9.2009 15:52:57 von color -
Der Ersteller des Threads ist wahrscheinlich ein Neuling in PHP, und weis daher wahrscheinlich nicht, dass includete Dateien nicht eingebunden werden, sondern dass der Inhalt dieser Dateien auf dem Server zwischen das Script eingefügt werden, d.h. der Browser weis garnicht, dass eine Datei eingebunden wurde, und alle Variablen von Script A, das Script B dann includet sind in Script B auch definiert.
Edit: Wieso immer eine neue Datei erstellen? Speichere deine Seiten doch in einer DB, dann ersparst du dir die ganzen Dateien, und außerdem ne Menge Arbeit.
Beitrag zuletzt geändert: 18.9.2009 16:07:56 von drafed-map -
drafed-map schrieb:
Der Ersteller des Threads ist wahrscheinlich ein Neuling in PHP
Edit: Wieso immer eine neue Datei erstellen? Speichere deine Seiten doch in einer DB, dann ersparst du dir die ganzen Dateien, und außerdem ne Menge Arbeit.
Ich bin mir net sicher aber ich glaub da wiederspricht sich ein wenig was. Zumal wie will jemand der net so gut is in PHP seinen Content in einer Datenbank speichern.
Selbst wenn das dann Funktioniert, wie soll man diese Seiten dann "benutzerfreundlich" bearbeiten können. Zudem müsste man dann noch einen Schritt weiter gehen und am bessten alles per XML speichern in ein Array schreiben beim auslesen und per Template ausgeben.
Aber erstmal klein und noobig anfangen wie die meisten von uns
Grüsse
Color -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage