Divs

Hey Ihr,

Ich muss nun für die Schule eine Website basteln, wo es um ein Relireferat geht. Hab die Seite bisher durch ein Fertig-Template gestaltet, was mir nun aber nicht gefällt. Ich weiß, wie es auszusehen hat, aber nicht, wie ichs realisier. Ich denke mal, dafür muss ich mich noch mit .css auseinandersetze, aber das später.

Meine Frage bezüglich Divs:

Ich will nicht jede Seite bei einer Menüänderung erneu ändern müssen. Also sollte eine gleichbleibende Mantel her, wo nur der Inhalt sich ändert. Mir schwirrten damals Frames durch den Kopf, was ich aber schnell durch meine damaligen Probleme schnell wieder vertrieb.

Nun meine Frage: Ich hab oft gelesen, dass sowas mit Divs viel leichter und eleganter zu bewerkstelligen geht. Wie funktioniert sowas? Muss ich dort auch noch immer jede Seite manuell ändern, falls ich vll. einen Schreibfehler in der Navi hab oder vielleich einfach nur einen Link ändern muss? Oder gibt es dort genauso, wie bei Frames, solch eigen abgespeicherte Seiten, die ich dann 1x für ALLE Seiten editieren muss?

Ich bedanke mich schon einmal im vorraus,
Nobody1993

Eine einfache Möglichkeit, das Menü zentral bearbeiten zu können, sind PHP-Includes.

inc.menu.php

[html]

[/html]

Diesen Inhalt kannst du nun wie folgt auf anderen Seiten einbinden:

index.php

[php]

<head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
    <title>New</title>
</head>

<body>
    <?php include 'inc.menu.php'; ?>

    <h1>Inhalt</h1>
</body>
[/php]

<?php include 'inc.menu.php'; ?> wird so durch den Inhalt von inc.menu.php ersetzt.

Geht das nur serverseitig oder auch auf der eigenen Festplatte?
Ich bearbeite meine Website nämlich auf der Festplatte und lade dann ab und zu die aktuellste Version hoch. Kann man so auch HTML-dateien einbinden oder nur PHP?

Wenn du es auf deinem Rechner vortesten willst, musst du dir Apache, PHP (und MySQL) installieren. Dafür gibts fertige Pakete → XAMPP (einfach googeln).

Wenn es hier wirklich nur darum geht Seiten einzubinden kannst du dich auch mal mit SSI (Server Side Includes) beschäftigen. Einfach mal googeln.

Gibt es auch eine HTML-Möglichkeit eine Navigation einzubauen die ich mit CSS und HTML in einer externen Datei(CSS-Menu.html) programmiert habe? Möglichst ohne Frames da die unterMenü’s sich wie bei Windows XP’s Startmenü (alle Programme) verhalten.

Nein.

Es gibt Editoren, die eine Art internes Templating anbieten (ich glaube etwa Dreamweaver), aber das ist nicht vergleichbar.

Und wie soll ich dann meine CSS-HTML-Navigation in php umwandeln?

Hallo.

Du brauchst nichts umzuwandeln.
Deine Datei wird lediglich mit php eingebunden, schau dir weiter oben das Beispiel von mermshaus nochmal an.

Gruss
Elroy

Das heißt einfach die navi statt menu.htm in menu.php benennen?
Wow dachte das wäre schwerer…
Und mit Xamp kann ich dann php auf meiner Festplatte anzeigen?
Das war nämlich schon immer eines meiner Probleme.
Kann ich dann auch in der menu.php (mit HTMLsourcecode) php-skripte verwenden? (Würde dann nämlich noch die Uhrzeit unter die navi machen ^^

EDIT: Noch eine Frage: reicht XAMPP Lite zum anzeigen von PHP auf meiner Festplatte???

Ja zu allem. PHP-Dateien (.php) sind im Prinzip HTML-Dateien, in die über einen besonderen Tag PHP-Code eingetragen werden kann (<?php ... ?>, siehe oben).

Ich hab jetzt Xampp LITE installiert und die navi eingebunden. Jetzt sehe ich aber nichts.
Woran kann das liegen??? Edit: Auf der Festplatte online müsste ja wohl gehen.

hab dazu auch mal noch ne frage wenn die Startpage auf einer Homepage vom Host her index.html sein muss ich aber php verwende heisst sie dann logischerweise index.php wird dann aber nicht angezeigt. Wie kann ich dass nun ändern oder geht das gar nicht?

MFG devilseye

Moin,

mit der Light-Version hab ich´s auch nicht ans laufen bekommen, mit der „großen“ Variante schon. Aber Du musst drauf achten, dass alle betroffenen Dateien in *.php umbenannt werden. Also nicht nur die Menü-Datei (als include ohne header !), auch die Zieldatei (z.B. die index.php). Für die „Online-Variante“ sind dann noch 2 Dinge zu beachten:

  • Dein Provider und natürlich Dein Webpack müssen PHP unterstützen
  • die entsprechenden HTML-Dateien müssen vom Server runter (oder, falls Du auf Nr. sicher gehen willst, umbenannt werden, z.B. index.html in index.old), sonst wird möglicherweise immer die HTML-Version aufgerufen.

Grüsse
low

Diese Formulierung lässt darauf schließen, dass der Provider kein PHP unterstützt. Ansonsten mal beim Provider in die FAQ´s gehen, wenn PHP unterstützt wird, geht´s auch. Evtl. muss das Suffix der Startdatei in Deinem Webpack geändert werden.
Die PHP-Datei wird ansonsten, wie oben beschrieben, mglw nicht beachtet, solange noch eine gleichlautende HTML-Version auf dem Server liegt.

Laut Beschreibung geht es theoretisch auch mit der Lite-Version. schulterzuck Aber lowsaxonian hat ja noch einige Tipps geliefert.

@Problem mit index.html statt index.php:

Eventuell bringt eine .htaccess-Datei (bei Apache-Servern) mit folgendem Inhalt etwas (einfach ins Wurzelverzeichnis des Webspaces hochladen):

DirectoryIndex index.php index.html

Das legt die Reihenfolge fest, welcher Dateiname vom Webserver als Indexdokument eines Ordners angesehen werden soll.