Navigation per php-Include einbinden funktioniert nicht

  • Ja, funktioniert.
    Ich habe die Originaldatei erstmal unter anderem Namen gesichert. Die #-Zeichen im Code stehen für Kommentar, oder ?
    Vielen Dank und lieben Gruß.

  • Hallo, habe zu diesem Thema auch eine frage, warum kann ich die Links, die ich über include einbinde, im Mozilla Firefox anklicken im IE aber nicht? Bei Grafiken die ich als Link hinterlege muss ich im IE größe und ohne Rahmen angeben, damit er ein Bild als Link erkennt, habe das aber alles in der include versucht und weiss nun nicht mehr weiter, Danke für eure Vorschläge!

    Gruß Izelion

    Einmal editiert, zuletzt von Izelion (31. März 2009 um 17:43)

  • Hallo, danke für den Tipp aber leider erfolglos, ich habe auch den IE7, heisst das, dass bei dir links auf meiner Seite anklickbar sind ?

    gruß Izelion

    Einmal editiert, zuletzt von Izelion (1. April 2009 um 08:30)

  • OK, hab erst jetzt in den Quelltext gesehen, und zwar auf der Seite "Gedichte":
    Da sind eine Menge Validierungsfehler drin.
    Du hast vor allem das Grundgerüst des Seitenaufbaus nicht beachtet.
    Da stehen Teile und Elemente an Stellen, wo sie einfach nicht hingehören.

    Beispiele:
    Bevor du body öffnest, musst du head schließen.
    Innerhalb body öffnest du dann nochmal html und head, was unzulässig ist.
    Dann öffnest du body ein zweites Mal und schließt ihn danach gleich wieder.

    Dein Problem hat also nichts mit PHP-Include zu tun, sondern liegt am total falschen Page-Aufbau.
    Bereinige das mal alles, dann werden sicher auch die Links funktionieren bzw. man kann dann den eigentlichen Fehler besser eingrenzen.

  • NA dann werd ich das mal überarbeiten, danke. Ich habe einfach teile des quellcodes von meiner alten Seite in die neue Kopiert und habe das völlig ausser acht gelassen!

  • Also habe jetzt mal geschaut, habe vergessen einen <head> befehl zu schließen, ja! aber vom doppelten body sehe ich nichts! Habe jetzt mal durchgeschaut, und erneut hochgeladen, wäre nett wenn du dir die Seite http://www.gedichtswelt.de/mysongs.php anschauen könntest um fehler zu suchen, weil ich von der nachher alle anderen Seiten mache, danke!


    gruß Izelion

  • Eigerntlich sollte dir der Validator helfen, weil da viel zu viele Fehler drin sind.
    Ich versuchs aber trotzdem mal, jedoch ohne Garantie auf Vollständigkeit.

    Grün=einfügen
    Rot=streichen


    Natürlich sollte die Seite danach noch weiter optimiert und der Code "verschlankt" werden.

  • Ah, ok jetzt habe ich das problem gesehen, in meinem Editor ist der quellcode nämlich fehlerfrei, dieses doppelte <html><head> und <body> ist von der include datei! die wird angezeigt wenn du im web auf Quelltext gehst, normal steht da nämlich der include befehl, hier mal der original quellcode wie in meinem Editor,

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    <html>
    <head>
    <link rev="made" content="mailto:info@gedichtswelt.de">
    <title>Gedichtswelt.de</title>
    <META name="PUBLISHER" content="Roland Born">
    <META name="AUDIENCE" content="alle">
    <META name="PAGE-TOPIC" content="Unterhaltung, Dienstleitung">
    <META name="COPYRIGHT" content="(c) 2001 - 2009 by Roland Born">
    <meta name="keywords" content="gedicht, lyriks, dichter, dichten, schriftstellerliebe, love, armor, romantic, romantik, poesie, poesi, allgemeine gedichte, gedichtswelt.de, gedichtswelt, lyrik, sammlung, liebesgedichte, trauer, abschied, freundschaft, liebe, sehnsucht, tod, moderne gedichte, freundschaft Gedichte, liebe Gedichte, was ist Liebe, schmerzen für Dich, Dreamgirl, schwere Zeit, gefühle, gedanken, trauer, liebe, niemals glücklich, dunkel, suche & finde, sommerliebe, hoffnung, blitzgedanken, altagspoesie, leben, sseelennarben">
    <META name="GENERATOR" content="">
    <META name="REVISIT-AFTER" content="30 days">
    <META name="ROBOTS" content="INDEX, FOLLOW">
    <META name="CONTENT-LANGUAGE" content="de">
    <link rel="stylesheet" href="layout.css" type="text/css" />

    </head>


    <body>
    <div id="banner">
    </div>


    <div id="textfeld">
    <div id="text">
    <img src="images/gedichte.png">
    <br>
    <table>
    <tr>
    <td><?php include ("./include/links.php"); ?></td>
    <td><img src="images/leerpunkt.gif" width="10"></td>
    </tr>
    </table>

    <img src="images/leerpunkt.gif" width="120" height="350"><object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/…ersion=6,0,29,0" width="500" height="300">
    <param name="movie" value="Animationen/wasistliebe.swf">
    <param name="quality" value="high">
    <embed src="Animationen/wasistliebe.swf" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="500" height="300"></embed>
    </object>
    </div>
    </div>

    <div id="links">
    <div id="internlinks">

    <table cellspacing="0">
    <tr>
    <td><a href="index.php" target="_self"><img src="images/schrift/start1.png" border="0" ></a></td>
    </tr>
    <tr>
    <td><a href="gedichte.php" target="_self"><img src="images/schrift/gedichte1.png" border="0"></a></td>
    </tr>
    <tr>
    <td><a href="songtexte.php" target="_self"><img src="images/schrift/songtexte1.png" border="0"></a></td>
    </tr>
    <tr>
    <td><a href="mysongs.php" target="_self"><img src="images/schrift/mysongs1.png" border="0"></a></td>
    </tr>
    <tr>
    <td><a href="videos.php" target="_self"><img src="images/schrift/videos1.png" border="0" height="50" width="60"></a></td>
    </tr>
    <tr>
    <td><a href="links.php" target="_self"><img src="images/schrift/links1.png" border="0"></a></td>
    </tr>
    <tr>
    <td><a href="recht.php" target="_self"><img src="images/schrift/recht1.png" border="0"></a></td>
    </tr>
    <tr>
    <td><a href="gaestebuch.php" target="_self"><img src="images/schrift/gaestbuch1.png" border="0"></a></td>
    </tr>
    </table>
    </div>
    </div>


    <div id="info">
    <div id="infotext">
    <img src="images/leerpunkt.gif" height="10" width="190"><a href="sitemap.php" target="_self"><img src="images/schrift/sitemap.png" border="0"></a><img src="images/leerpunkt.gif" height="10" width="150"><a href="kontakt.php" target="_self"><img src="images/schrift/kontakt.png" border="0"></a><img src="images/leerpunkt.gif" height="10" width="120"><a href="impressum.php" target="_self"><img src="images/schrift/impressum.png" border="0"></a>
    </div>
    </div>
    </body>
    </html>

    Das heisst also in die Include datei gehören nur die Links, nicht der aufbau??

    das ist der derzeitige code

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    <html>
    <head>
    <title>Unbenanntes Dokument</title>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    </head>
    <a href="gedichte.php" width="130" height="30">Was ist Liebe</a> | <a href="schmerzenfuerdich.php">Schmerzen f&uuml;r Dich</a> | <a href="dreamgirl.php">Dreamgirl</a> | <a href="schwerezeit.php">Schwere Zeit</a> | <a href="gefuehle.php">Gef&uuml;hle</a> | <a href="gedanken.php">Gedanken</a> | <a href="trauer.php">Trauer</a> | <a href="liebe.php">Liebe</a> | <a href="niemals_gluecklich.php">Niemals gl&uuml;cklich</a> | <a href="dunkel.php">Dunkel</a> | <a href="suchefinde.php">suche & finde</a> | <a href="sommerliebe.php">Sommerliebe</a> | <a href="hoffnung.php">Hoffnung</a> | <a href="blitzgedanken.php">Blitzgedanken</a> | <a href="altagspoesie.php">Altagspoesie</a> | <a href="leben.php">Leben</a> | <a href="seelennarben.php">Seelennarben</a> | <a href="geistreich.php">Geistreich</a> |<br>

    <body>

    </body>
    </html>

    Sorry für die umstände und danke für die Hilfe!

    Einmal editiert, zuletzt von Izelion (1. April 2009 um 21:28)

  • erstmal ganz wichtig: es gibt NICHTS, was zwischen </head> und <body> steht!

    kopiere mal die links IN den body-teil !


    zusätzlich: ein include kopiert im prinzip einen teil in den anderen. ist nicht wie bei
    einem iframe. in einem iframe wird eine komplette seite nochmal angezeigt. deshalb
    benötigt diese seite ein html-grundgerüst. da beim php-include eben ein stück
    komplett eingefügt wird, wie ein copy&paste, wird hierbei kein grundgerüst benötigt.
    du kannst also komplett das code-stück (z.b. nur eine liste von <ul> bis </ul>)
    in eine php-datei kopieren. der browser später merkt garnicht ob die datei komplett
    so vorliegt oder aus 1000 einzelnen zusammengesetzt ist.

  • Ähm sorry, zwischen Head und Body steht nix! Also hab jetzt nochmal alle seiten vom Server genommen und ausschließlich die Index und die gedichte.php hochgeladen.

    http://www.neu.gedichtswelt.de/gedichte.php

    habe die Include datei abgeändert so das jetzt nur noch die links includet werden. aber das Grundproblem ist das selbe, in Mozilla gehen die Links, in IE nicht!

  • also zum einen hast du noch einige validator-fehler drin, die noch behoben werden müssten.
    einen fehler konnt ich allerdings nicht feststellen. ob ich nun auf startseite oder
    gedichte klicke, es wird immer der inhalt gewechselt. sowohl im ie als auch im ff.

    einziger unterschied is, dass im ie der "inhalt" nicht angezeigt wird - zumindest bei
    mir, denn hier ist (also auf meinem pc) im ie kein player installiert...

  • Die weissen Links auf der Gedichte seite lassen sich im IE nicht klicken, die anderen schon! Nur bei den Includierten geht das nicht!
    Die links die auf der linken Seite stehen: Starseite, Gedichte , Songtexte Songs etc, laufen einwandfrei sowohl im ff als auch im IE!

    Könnte mir nochmal jemand sagen welche validator-fehler noch in der gedichte.php sind?

    3 Mal editiert, zuletzt von Izelion (2. April 2009 um 15:20)

  • Hier nochmal der code mit einer genauen Fehlerbeschreibung, an der Stelle Textfeld (Rot makiert) funktionieren im IE keine Links, ganz egal ob über include oder über den html Befehl
    <a href=""></a>. Es geht nicht, und ich finde den fehler nicht......

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    <html>
    <head>
    <link rev="made" content="mailto:info@gedichtswelt.de">
    <title>Gedichtswelt.de</title>
    <META name="PUBLISHER" content="Roland Born">
    <META name="AUDIENCE" content="alle">
    <META name="PAGE-TOPIC" content="Unterhaltung, Dienstleitung">
    <META name="COPYRIGHT" content="(c) 2001 - 2009 by Roland Born">
    <meta name="keywords" content="gedicht, lyriks, dichter, dichten, schriftstellerliebe, love, armor, romantic, romantik, poesie, poesi, allgemeine gedichte, gedichtswelt.de, gedichtswelt, lyrik, sammlung, liebesgedichte, trauer, abschied, freundschaft, liebe, sehnsucht, tod, moderne gedichte, freundschaft Gedichte, liebe Gedichte, was ist Liebe, schmerzen für Dich, Dreamgirl, schwere Zeit, gefühle, gedanken, trauer, liebe, niemals glücklich, dunkel, suche & finde, sommerliebe, hoffnung, blitzgedanken, altagspoesie, leben, sseelennarben">
    <META name="GENERATOR" content="">
    <META name="REVISIT-AFTER" content="30 days">
    <META name="ROBOTS" content="INDEX, FOLLOW">
    <META name="CONTENT-LANGUAGE" content="de">
    <link rel="stylesheet" href="layout.css" type="text/css" />
    </head>


    <body>
    <div id="banner">
    </div>

    <div id="textfeld">
    <div id="text">

    Hier sollen LInks erscheinen, aber im IE funktionieren die nicht!!!! Hilfe!!

    </div>
    </div>

    <div id="links">
    <div id="internlinks">

    <table cellspacing="0">
    <tr>
    <td><a href="index.php" target="_self"><img src="images/schrift/start1.png" border="0" ></a></td>
    </tr>
    <tr>
    <td><a href="gedichte.php" target="_self"><img src="images/schrift/gedichte1.png" border="0"></a></td>
    </tr>
    <tr>
    <td><a href="songtexte.php" target="_self"><img src="images/schrift/songtexte1.png" border="0"></a></td>
    </tr>
    <tr>
    <td><a href="mysongs.php" target="_self"><img src="images/schrift/mysongs1.png" border="0"></a></td>
    </tr>
    <tr>
    <td><a href="videos.php" target="_self"><img src="images/schrift/videos1.png" border="0" height="50" width="60"></a></td>
    </tr>
    <tr>
    <td><a href="links.php" target="_self"><img src="images/schrift/links1.png" border="0"></a></td>
    </tr>
    <tr>
    <td><a href="recht.php" target="_self"><img src="images/schrift/recht1.png" border="0"></a></td>
    </tr>
    <tr>
    <td><a href="gaestebuch.php" target="_self"><img src="images/schrift/gaestbuch1.png" border="0"></a></td>
    </tr>
    </table>
    </div>
    </div>


    <div id="info">
    <div id="infotext">
    <img src="images/leerpunkt.gif" height="10" width="190"><a href="sitemap.php" target="_self"><img src="images/schrift/sitemap.png" border="0"></a><img src="images/leerpunkt.gif" height="10" width="150"><a href="kontakt.php" target="_self"><img src="images/schrift/kontakt.png" border="0"></a><img src="images/leerpunkt.gif" height="10" width="120"><a href="impressum.php" target="_self"><img src="images/schrift/impressum.png" border="0"></a>
    </div>
    </div>
    </body>
    </html>

  • So... ich habe mal versucht da durchzusteigen...

    Ich Poste dir jetzt aber erstmal keine schöne Version, weil du darfst ja hier auch was lernen : )

    Mal ein paar Anmerkungen

    Zitat


    <META name="COPYRIGHT" content="(c) 2001 - 2009 by Roland Born">
    <meta name="keywords" content="gedicht, lyriks,[..]">

    Bitte entscheide dich für eine Variante dein "meta" zu schreiben, und zwar für die kleine Schreibweise.

    ---
    Du hast im übrigen noch deine Angabe zur Zeichenkodierung im head vergessen.
    Setze die mal bitte auch noch, hier noch ein Bsp

    Code
    <meta http-equiv="content-type" content="text/html; charset=UTF-8">

    ---

    Zitat

    <link rel="stylesheet" href="layout.css" type="text/css" />

    Der " /" hat am Ende nicht zu suchen.

    Nochwas...

    Zitat

    <link rev="made" content="mailto:info@gedichtswelt.de">

    Das gibts so nicht.
    Im <link> ist kein content vorgesehen. Dazu mehr hier


    Zitat

    <img src="images/schrift/gedichte1.png" border="0">

    Wozu schreibst du in alle img-Tags das border="0", das geht doch auch über css einfacher...
    Und noch was verdammt wichtiges!
    In jeden img-Tag gehört ein alt="" - Attribut


    Zum Abschluß noch was für dein Include

    Code
    include './include/links.php';

    Schreibs mal so und achte unbedingt darauf das deine Datei als *.php abgespeichert wird, sonst bringt dir das include rein gar nix.

    Soviel dazu erstmal

    PS: Dein Table kannst du sicherlich auch als Liste schöner machen. Und die vielen doppelten DIVs sind erstmal rein optisch nicht notwendig, meiner Meinung nach, kann mich ja auch täuschen.

    3 Mal editiert, zuletzt von thilda (6. April 2009 um 22:49) aus folgendem Grund: Nochmal noch was vergesssen, den letzten beißen die Hunde

  • Hallo Thilda,

    vielen dank für die Hilfe, ändere das jetzt soweit erstmal ab, zu deiner Frage

    Zitat

    Wozu schreibst du in alle img-Tags das border="0", das geht doch auch über css einfacher...
    Und noch was verdammt wichtiges!
    In jeden img-Tag gehört ein alt="" - Attribut

    Ich hatte das Problem, das meine Grafik links im IE nicht erkannt wurden, erst wenn ich die Grafik mit width und height deklariert hatte funktionirten diese. Allerdings waren die dann automatisch im IE mit einem Rand umzogen was ich durch die angabe border="0" wieder geändert habe.

    Also, nochmals vielen dank und ich hoffe das die Links nun funktionieren.

    Gruß Izelion

  • So habe jetzt alles soweit geändert, aber die Links gehen in IE immer noch nicht! Alles was ich in das Textfeld setze funktioniert nicht! :(

    Dann muss ich mir wohl doch etwas anderes einfallen lassen.

    gruß vom Izelion

  • Dann Poste doch mal deinen neuen Code der im IE nicht will.
    und zeige nochmal genau was nicht will... Mit dem "Textfeld" wie du sagt kann ich nämlich nichts anfangen.