• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Befürchte "Fehler" bei include()

pr0bl3mk1nd

Neues Mitglied
Hallo zusammen
lAAAAAAAAACH5BAEAAA4ALAAAAAAPAA8AAARb0EkZap3YVabOGRcWcAgCnIMRTEEnCCfwpqt2mHEOagoOnz+CKnADxoKFyiHHBBCSAdOiCVg8KwPZa7sVrgJZQWI8FhB2msGgwTXTWGqCXP4WBQr4wjDDstQmEQA7
,
ich bin grad dabei eine Homepage zu erstellen, die aus einem simplen 3-Spalten Layout besteht (Header, Navigation, Inhalt).
Nun möchte ich für jeden Inhalt eine eigene .html-Datei anglegen und wenn man auf der Hauptseite ist und z.B. in der Navigation einen Verweis anklickt, soll die entsprechende .html-Datei in den Inhaltsteil geladen werden, während die Header- und Navigationsspalte gleich bleiben.
Aber ich möchte ebenso die Seiten suchmaschinenoptimieren, nur da tritt in meinen Gedanken für mich ein Problem auf (Ich habe es also noch nicht gescriptet).

Die Suchmaschine durchsucht ja die .html-Datein nach dem Inhalt. Aber wenn diese .html-Datein in meinen Inhaltsteil dynamisch geladen wird, woher weiß dann die Suchmaschine, bzw. wie kann ich ihr sagen, dass diese gefundede .html-Datei woanders (index.php) "reingeladen" werden muss, (Ich hoffe ihr versteht was ich meine ... :D) sodass nicht nur der Inhaltsteil angezeigt wird, sondern alles (Header, Navigation usw...).

Ich hoffe ich konnte mein Problem vernümpftig erklären :?.

MfG
 
Die Suchmaschine weiß das genauso, wie du es weißt, denn du musst deiner index.php ja sagen, welche Datei included werden soll. Daher musst ja die Index mit einem Parameter aufrufen wie index.php?page=impressum oder index.php?page=gaestebuch. Suchmaschinen können sowas und folgen auch diesen Links in deinem Dokument. Als Beispiel kannst mal meine Seite anschaun, ich hab es identisch gemacht. Mein Template index.php macht einen Include, der aber nur das div id=data mit einem include füllt. Alles andere bleibt weitgehend konstant. Beispiel Mühlespiel - Startseite (und hunderttausende andere Seiten im Netz).
 
Erstmal vielen Dank für deine Antwort. Hast mir schonmal deutlich weitergeholfen. ;)
Nur diese Variablen (soweit ich weiß) im Adressbalken nach dem ? wie z.B. page=impressum werden doch irgendwo her "gegettet" bzw. per Get übergeben. Nur woher?

Und zum Anderen ich habe wie du auf deiner Homepage oben im Header so eine Menüleiste. Und die Menüpunkte bestehen wie bei dir aus Verweisen. Nur wie kann ich, wenn man auf einen Verweis klickt, eine Datei includen?

MfG
 
Zuletzt bearbeitet:
In etwa so

PHP:
$pagename  = isset($_GET['page']) ? $_GET['page'] : 'index';
$includefile  = "includefolder/$pagename.htm";
if (! file_exists($includefile) ) die("Ungültige Seite $pagename");
include($includefile);
 
HTML:
<ul>
    <li><a href="index.php?page=home" title="">Home</a></li> <!-- bindet home.htm ein -->
    <li><a href="index.php?page=contact" title="">Kontakt</a></li> <!-- bindet contact.htm ein -->
    <li><a href="index.php?page=imprint" title="">Impressum</a></li> <!-- bindet imprint.htm ein -->
</ul>

edit: net is mir wohl jemand zuvor gekommen :)
 
Danke Euch :)

Ich hab jetzt was getestet, doch leider klappts nicht, denn es wird nichts per echo ausgegeben, wenn man auf einen der Verweise klickt. Könnt ihr mir nochmal helfen?

MfG :thumbs up:

HTML:
<html>
    <form method="get">
        <ul>
            <li><a href="index.php?page=home" title="">Home</a></li> <!-- bindet home.htm ein -->
            <li><a href="index.php?page=contact"  title="">Kontakt</a></li> <!-- bindet contact.htm ein  -->
            <li><a href="index.php?page=imprint"  title="">Impressum</a></li> <!-- bindet imprint.htm  ein -->
        </ul>
    </form>
</html>

PHP:
<?
    if (isset($_GET['home']))
    {
        echo "home is set";
    }
    else if (isset($_GET['contact']))
    {
        echo "contact is set";
    }
    else if (isset($_GET['imprint']))
    {
        echo "imprint is set";
    }
?>
 
sorry, lesen und abschreiben solltest schon können
steht alles richtig vorne
aber es reicht nicht nur abschreiben,
man sollte auch verstehen, was man abschreibt
 
Zurück
Oben