Minimales Projekt

Dr. O. Hoffmann

Die Projektseite

Dieses Projekt basiert auf einer einzigen Seite, typisch der index.php, die alle weiteren Inhalte in sich einbindet. Dazu kommen die diversen CSS-Dateien, das favicon.ico und gegebenenfalls weitere Bilder, etwa Hintergrundbilder, die in den CSS-Dateien gebraucht werden.

Die Anordnung der Strukturen in der XHTML-Ausgabe ist wohlüberlegt. Wenn erst der eigentliche Inhalt ausgegeben wird und dann erst das Menü, so ist gewährleistet, daß ohne CSS der Inhalt beim Aufruf der Seite gleich sichtbar und für den Leser am relevantesten ist.
Von der Logik her wird er das Menü erst nach dem Lesen des Inhalts wieder brauchen, um neuen Inhalt auszuwählen.

Schauen wir uns einfach einmal an, wie der Quelltext des PHP-Dokumentes aussieht, Details folgen in den weiteren Menüpunkten:

<?php
# initialisieren:
include('./wurzel.php');
# Parameter einlesen einbinden:
include("$verzeichnis/ooch/check.php");
# Kopf einbinden
include("$verzeichnis/ooch/kopf.php");
# title einbinden
$filename="$verzeichnis/titel/$in.php";
if (file_exists($filename)) {
  include($filename);
} else {
echo('<title>Minimales Projekt</title>');
}
$filename="$verzeichnis/meta/$in.php";
if (file_exists($filename)) {
  include($filename);
} else {
include("$verzeichnis/meta/meta.php");
}
# headlinks einbinden:
include("$verzeichnis/menue/headlink.php");
# Jetzt geht es los: Inhalt anzeigen...
# Die ersten leeren div-tags koennen spaeter diverse 
# Hintergrundbilder fuer css bereitstellen
# der body bekommt eine 
# id fuer einige css-Tricks
?>
</head>
<body id="body"> 
<div class="hg0">
<div class="hg1">

</div>  <!-- Ende hg1 -->

<div class="hg2">

</div>  <!-- Ende hg2-->

<div class="hg3">

</div>  <!-- Ende hg3 -->

 <div class="rechts">  
  <!-- Hauptrahmen mit spaeterem Inhalt -->
  <div class="oin"> 
   <!-- css Deko-Rahmen zu 'oben' -->
   <div class="oben"> 
     <!-- Ueberschrift des Inhaltsbereichs -->
     <h1 title="Beispiel f&uuml;r ein Projekt in xhtml, css und php zum Nachvollziehen">Minimales Projekt</h1>
     <p class="obensub" title="Autor:">Dr. O. Hoffmann</p>
   </div> <!-- Ende oben -->   
  </div> <!-- Ende oin -->
  <div class="iin">  <!-- css Deko-Rahmen Inhalt -->
   <div class="inhalt">  <!-- Rahmen Inhalt -->
<?php
# der eigentliche Inhalt:
$filename="$verzeichnis/inhalt/$in.php";
if (file_exists($filename)) {
include($filename);
} else {
include("$verzeichnis/inhalt/start.php");
$in='start';
}
?>
   </div> <!-- Ende inhalt -->
  </div> <!-- Ende iin -->
 </div> <!-- Ende rechts -->
<?php
# nur wenn kein Druckstil gewaehlt wird, anzeigen:
if ($stil !='p') {
?>
<div class="liin">
 <div class="links"> <!-- Rahmen mit spaeterem Menue -->
  <div class="logo"> 
   <!-- Rahmen fuer Logo - kann auch ein Bild rein -->
   <h1 class="logo" title="Minimales Projekt, Men&uuml;">MP</h1>
  </div>
 <ul class="menu"> 
 <?php
 #Menue als Liste  
 $filename="$verzeichnis/menue/$me.php";
 if (file_exists($filename)) {
   include($filename);
 } else {
   include("$verzeichnis/menue/start.php");
   $me='start';
 }
 # Stilmenue als Liste, nur wenn keine Roboter gucken
 if ($stil !='_') {
   include("$verzeichnis/menue/stilmenue.php");
 }
?>
 </ul> <!-- Ende ul menu -->
</div>  <!-- Ende links -->
</div>  <!-- Ende liin -->
<?php
# falls der Druckstil gewaehlt wird, 
# Verweis zum Menue zurueck
} else if ($stil == 'p'){
  echo '<div>';
  echo " <a href=\"?me=$me&amp;in=$in&amp;stil=$stilnr\" 
  title=\"Men&uuml;\" tabindex=\"1\">&lt;--</a> \n";
  echo '</div>';
}
?>
</div> <!-- Ende hg0 -->
</body>
</html>
<?php
# Bearbeitung explizit beenden:
exit;
?>