Ihr kennt das Einbinden einer Seite per Link (http://www.snipers-page.de/?site=tus) aber habt bisher nur Schrott gefunden oder umständliche Codes? Hier gibt's was besseres
Ihr setzt euere Seiten, die eingebunden werden sollen einfach in ein Array. Am besten in eine vars.php, die man immer ganz oben per require_once(); einbindet.
Inhalt der
vars.php :
1 2 3 4 5 6 7
|
<?
//[...]
$mainsite['home'] = 'include/home.php';
$mainsite['news'] = 'include/news.php';
$mainsite['downloads'] = 'include/downloads.php';
//[...]
?>
|
Nun diesen Code da hinpacken, wo man den Inhalt der Seiten gerne haben möchte
Inhalt der
index.php:
1 2 3 4 5 6 7 8 9 10
|
<?
require_once("vars.php"); // hier ein Beispiel für die funktion
//require_once();. Funktioniert wie include();
//[...]
if(isset($_GET['site']))
(isset($mainsite[$_GET['site']])) ? include($mainsite[$_GET['site']]) : include('errorsite.php');
else
include($mainsite['news']);
//[...]
?>
|
Das wars
"Kurze" If-Abfrage erklärt:
(hier die Bedingung, z.b !empty($var)) ? wenn Bedingung erfüllt, mache das was hier steht : ansonsten das hier
Infos zur Funktion
include:
Wenn man per include(); eine Datei einbindet, wird auch der komplette Inhalt übernommen. Man sollte also in den Dateien auf keinen Fall das <html>, <head>, </head>, </html>, etc., in die einzubindende Datei schreiben.
Beispiel
Index.php:
1 2 3 4 5 6 7 8 9 10 11 12
|
<?
echo "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\" \"http://www.w3.org/TR/html4/loose.dtd\">";
echo "<html>";
echo "<head>";
echo "<meta http-equiv=\"Content-Type\" content=\"text/html; charset=iso-8859-1\">";
echo "<title>Untitled Document</title>";
echo "</head>";
echo "<body>";
include("main.php"); // hier sollte die main.php kein <html> und <head> usw. stehen, da dies sonst doppelt vorhanden wäre ;)
echo "</body>";
echo "</html>";
?>
|
Ein Link würde dann so aussehen:
1 2
|
<a href="index.php?site=news">news</a>
<a href="v1/?site=testing">test</a>
|
Tutorial (c) 2006 by
http://snipers-page.de
Have Fun
Mfg
Sniper
Nur registrierte Mitglieder könnten einen Kommentar schreiben.
Melde dich doch ganz einfach an, es ist kostenlos. :-)
Ansonsten bringt das Tut eher wenig (könnte sogar irgendwoher kopiert sein - nicht dass ich das behaupte, nee nee, ich meine nur 'könnte', da ja kein Beispiel des Tuts verlinkt ist).