Tutorials

Site include Tutorial

Einloggen
Benutzername:
Passwort:

Passwort vergessen?
Kostenlos
Anmelden
anzeigen
Site include


3669 - Sniper - 26.06.2006 16:54 Uhr - Version: 1 - - verlinken als BB-Code


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 Smily NR:8
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 Smily NR:7

"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

Mitglieder-Kommentare


#1 von molin
Und jetzt bitte einen Link zu einer Seite, wo du ein funktionierendes Beispiel zeigst.
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).


Nur registrierte Mitglieder könnten einen Kommentar schreiben.

Melde dich doch ganz einfach an, es ist kostenlos. :-)