Mehrere Seiten in einem File?

Fragen zu allen Themen rund ums Programmieren außerhalb von phpBB können hier gestellt werden - auch zu anderen Programmiersprachen oder Software wie Webservern und Editoren.
Benutzeravatar
Spezial
Mitglied
Beiträge: 135
Registriert: 15.07.2004 08:53
Wohnort: Braunschweig
Kontaktdaten:

Beitrag von Spezial »

ich machs imma so:

Code: Alles auswählen

<?php
$action = (isset($_GET['action'])) ? $_GET['action'] : 'home';
include('inhalt/' . $action . '.php');
?>
ich denke mal was wo rein muss erklärt sich vons elbst :)
Wenn Chuck Norris ins Wasser fällt, wird er nicht nass…aber das Wasser wird Chuck Norris.
Benutzeravatar
S2B
Ehemaliges Teammitglied
Beiträge: 3258
Registriert: 10.08.2004 22:48
Wohnort: Aachen
Kontaktdaten:

Beitrag von S2B »

Nein. :-? Mit dieser Methode kann jeder Benutzer beliebige Dateien auf deinem Server includen, das ist nicht gut.

Um das zu verhindern, gibt es mehrere Möglichkeiten, unter anderem auch die if - elseif - else-Methode.

Code: Alles auswählen

if ($page == 'seite1')
{
  include('seite1.php');
}
elseif ($page == 'seite2')
{
  include('seite1.php');
}
else
{
  include('standard.php');
}

Code: Alles auswählen

switch ($page)
{
  case 'seite1':
    include('seite1.php');
  break;

  case 'seite2':
    include('seite1.php');
  break;

  default:
    include('standard.php');
  break;
}

Code: Alles auswählen

$pages = array('seite1', 'seite2');
if (in_array($page, $pages))
{
  include($page . '.php');
}
else
{
  include('standard.php');
}
Gruß, S2B
Keinen Support per ICQ/PM!
Hier kann man meine PHP-Skripte und meine MODs für phpBB runterladen.
Benutzeravatar
eiko
Mitglied
Beiträge: 154
Registriert: 05.11.2005 21:41

Beitrag von eiko »

Danke fuer eurte Hilfe. Aber wo fuege ich den Code jetzt genau ein?
http://www.phpbb.de/doku/kb/artikel.php ... hpbb_seite
fanrpg
Mitglied
Beiträge: 2909
Registriert: 13.12.2004 22:41

Beitrag von fanrpg »

Nein. Mit dieser Methode kann jeder Benutzer beliebige Dateien auf deinem Server includen, das ist nicht gut.
Spezials Variante ist jawohl sicher :wink:
Benutzeravatar
S2B
Ehemaliges Teammitglied
Beiträge: 3258
Registriert: 10.08.2004 22:48
Wohnort: Aachen
Kontaktdaten:

Beitrag von S2B »

fanrpg hat geschrieben:Spezials Variante ist jawohl sicher :wink:
Man nehme eine index.php in einem Ordner, in dem das Verzeichnis inhalt existiert und teste folgendes:

Code: Alles auswählen

<?php
include('inhalt/../index.php');
?>
Und einmal dynamisch:

Code: Alles auswählen

<?php
$action = (isset($_GET['action'])) ? $_GET['action'] : 'home'; 
include('inhalt/' . $action . '.php');
?>
Woher kennen wir das? :wink: Wenn du jetzt als action ../index übergibst, wird genau das gleiche passieren... Natürlich würde das auch mit jeder x-beliebigen PHP-Datei gehen, die auf deinem Server rumfährt und auf die PHP Zugriff hat.
Gruß, S2B
Keinen Support per ICQ/PM!
Hier kann man meine PHP-Skripte und meine MODs für phpBB runterladen.
Xwitz
Mitglied
Beiträge: 1104
Registriert: 21.06.2005 21:41

Beitrag von Xwitz »

eiko hat geschrieben:Danke fuer eurte Hilfe. Aber wo fuege ich den Code jetzt genau ein?
Da wo der selektive Inhalt hin soll?!
Antworten

Zurück zu „Coding & Technik“