emailconfirmed, nsInternRO, nsInternRW, Administrators
3,356
edits
m (→Includes) |
m (→Includes) |
||
Line 242: | Line 242: | ||
$id = kontakt; | $id = kontakt; | ||
} | } | ||
// Debug (welchen Wert hat $id? Nicht raten, zeigen!) | |||
echo("<p>Aktuelle Seite ist: " . $id); | echo("<p>Aktuelle Seite ist: " . $id); | ||
// now include content | // now include content | ||
include($id . ".inc.php"); | include($id . ".inc.php"); | ||
Line 253: | Line 252: | ||
</source> | </source> | ||
Natürlich fehlt | Nun können wir die index.php aufrufen und sollten den Kontakt sehen. Wenn wir die URL ändern in <tt>/index.php?id=impressum</tt>, dann sehen wir den Inhalt der Datei impressum.inc.php! | ||
Falls gar nichts angezeigt wird, dann liegt das wahrscheinlich daran, dass die inkludierten Dateien nicht gefunden werden (Tippfehler!). In diesem Fall hilft ein Blick in das PHP Fehler-Log: am Mac ist das unter <tt>/Applications/MAMP/logs/php_error.log</tt>. Am Besten öffnen in "/Applications/Utilities/Console.app", dann aktualisiert sich das von selbst, wenn unsere PHP Skripte einen Fehler erzeugen: | |||
<source lang="Bash">[01-Dec-2009 21:45:18] PHP Warning: include() | |||
[<a href='function.include'>function.include</a>]: | |||
Failed opening 'impressuminc.php' for inclusion | |||
(include_path='.:/Applications/MAMP/bin/php5/lib/php') | |||
in ~/Sites/webprogramming/index.php on line 16</source> | |||
Wer das liest, der muss nicht lange rätseln, warum <tt>impressuminc.php</tt> nicht gefunden wird, wenn die Datei doch <tt>impressum.inc.php</tt> heißt :) | |||
Natürlich fehlt bei diesem Beispiel eine Fehlerprüfung, z.B. wenn es ein Dokument nicht gibt, aber im Prinzip ist das schon ein ziemlich einfaches CMS :) | |||
== Kontrollstrukturen == | == Kontrollstrukturen == |