Seite aufspalten - ohne Frames

Kopfballstar

Erfahrenes Mitglied
Hallo,

erstmal vorneweg: Ich hoffe ich kann mein Anliegen gut erklären. Das es geht weiß ich weil ich es schon gesehen habe, nur habe ich leider die Einzelheiten dazu vergessen.

Meine neue Seite soll folgende Struktur aufweisen: Im Header.php werden die öffnenden HTML Angaben gemacht, bis zum öffnenden <body> und einem öffnendem <table>. Geschlossen wird das ganze später im Footer.php. Dazwischen befindet sich dann die Seite. Ein linker , ein mittlerer und ein rechter Teil. In den jeweiligen PHP Dateien steht dann der Inhalt in Tabellenzellen.

Ich weiß einfach nicht mehr wie ich das ganze über die Index.php organisieren muss damit das ganze funktioniert. Vielleicht könnt ihr mir helfen.
 
Zuerst einmal: Es gehört sich nicht, das Layout einer Seite mit Tabellen zu machen :). Tabellen sind dazu da, um Inhalten tabellartisch dazustellen. Für Layouts gibt es Divs.

Dann zu deinem Problem.
Du includest einfach die header.php. Dann überprüfst, du welche und ob überhaupt eine Seite angefordert wurde. dementsprechen includest du dann diese Datei. Zum Schluss einfach noch die footer.php includen und fertig ist das ganze.
Hier noch ein Link: http://www.tutorials.de/forum/php-t...on-ueber-die-url-index-php-section-index.html
 
Zuletzt bearbeitet:
Das Prinzip ist eigentlich ganz einfach: Es gibt ein zentrales Skript, das anhand übergebener Werte die entsprechenden Inhalte sammelt und schließlich ein komplettes HTML-Dokument generiert.
Ein einfaches Beispiel:
PHP:
<?php

	// Liste der erlaubten Seiten
	$allowedPages = array(
		'start' => './seiten/startseite.html',
		'foo'   => './seiten/foo.txt',
		'bar'   => './bar.php'
	);

	// Validierung des übergebenen Werts
	$page = ( !empty($_GET['page']) || basename($_GET['page'])!='' ) ? basename($_GET['page']) : 'start';
	if( !isset($allowedPages[$page]) || file_exists($allowedPages[$page]) ) {
		header($_SERVER['SERVER_PROTOCOL'].' 404 Not Found', true);
		exit;
	}

	header('Content-Type: text/html; charset=ISO-8859-1', true);

?><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
	<title>foobar</title>
</head>
<body>
<?php

	include $allowedPages[$page];

?>
</body>
</html>
Die Seiten können nun mithilfe von URL-Argumenten nach dem Muster ?page=foobar ausgewählt werden.
 
Verstehe nicht, warum ers sich nicht gehört, Designs mit Tabellen aufzubauen?
Wie willst du ein ansprechendes Design nur mit div's hinbekommen?

ad Kopfballstar:

Wie du schon erwähnt hast sind Frames die eine Lösung.
Die andere Lösung wären zum Beispiel Tabellen.

Du legst mittels Tabellen dein Design und Platz für den Content fest.

Im Groben kannst du die Seite z.B.: mal so aufbauen:
Code:
-----
Header.php
-----

<html>
<head>
</head>
<body>
<table>

------
body.php
------

<tr>
<td>
Text
Bilder, bla bla
</td>
</tr>

------
footer.php
------
</table>
</body>
</html>

Dann fügst du das Ganze in der Index php zusammen:

PHP:
<?
include(header.php);
include(body.php);
include(footer.php);
?>
 
a*new*found*flo hat gesagt.:
Verstehe nicht, warum ers sich nicht gehört, Designs mit Tabellen aufzubauen?
Weil Tabellen ganz einfach nicht dafür gedacht sind. Sie sind zur Auszeichnung von tabellarischen Daten gedacht.

a*new*found*flo hat gesagt.:
Wie willst du ein ansprechendes Design nur mit div's hinbekommen?
Es gibt genug Beispiele dafür, dass es möglich ist. So etwa CSS Zen Garden, CSS Mania, CSS Vault, CSS Import, CSS Beauty, Unmatched Style etc. Mehr Galerie-Websites fallen mir gerade nicht ein. Alle dort genannten/gezeigten Websites werden komplett oder zumindest größtenteils durch CSS formatiert.
 
Ok, so genau hab ich mir das noch nie zu Gemüte geführt.
Stimmt - funktioniert - aber mit Tabellen finde ichs wesentlich angenehmer - als wenn man alles "Tot"-definieren muss.
 
a*new*found*flo hat gesagt.:
Ok, so genau hab ich mir das noch nie zu Gemüte geführt.
Stimmt - funktioniert - aber mit Tabellen finde ichs wesentlich angenehmer - als wenn man alles "Tot"-definieren muss.


Es kommt halt auch immer drauf an was man mit der Website vor hat. Ich denke das kann man nicht pauschalisieren. Für meine Seite kommt ein komplettes Design über CSS eher nicht in Frage.

So, ich danke euch, ich habe es jetzt hinbekommen!
 
Zurück