div-content reloaden

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • div-content reloaden

    Ich benötige wieder eure Hilfe. Ich habe den halben Tag damit verbracht, nach einer Lösung zu suchen. Ich denke mal, dass ich einen Lösungsvorschlag gefunden habe.
    Vielleicht kennt ihr aber eine bessere Möglichkeit meine "Idee" um zusetzen.

    Nun ist es nach meiner Beobachtung zu Folge möglich, den Content neu zu laden, ohne die anderen Div-Container.. Um genauer zu werden.
    Ich habe eine Grundgerüst erstellt names index.php. In der index.php befinden sich die divs header, left, right und footer.
    left-div ist mein frame für die navi und den right-div verwende ich für den content. Wenn ich einen Navigationspunkte ändere, soll
    sich der entsprechende Content laden, ohne dass header,left und footer reloaden werden müssen.

    Damals habe ich ganz einfach für jeden Navigationspunkt eine eigene Htmlseite gemacht.

    Bei Google hab ich die Möglichkeit mit javascript gefunden.

    Quellcode

    1. function replaceContent(show){
    2. var display = newArray();
    3. display[1] = "<?php include("home.php") ?>";
    4. display[2] = "<?php include("upload.php") ?>";
    5. display[3] = "<?php include("about.php") ?>";
    6. document.getElementById("right").innerHTML = display[show];
    7. }


    Und die Navigationspunkte dazu:

    Quellcode

    1. <div id="left">
    2. <ul>
    3. <li><a href="#" onclick="replaceContent(1)">home</a></li>
    4. <li><a href="#" onclick="replaceContent(2)">upload</a></li>
    5. <li><a href="#" onclick="replaceContent(3)">about</a></li>
    6. <li><a href="#">contact</a></li>
    7. <li><a href="#">faq</a></li>
    8. <ul>
    9. </div>


    Ich habe es versucht für mich anzupassen. Leider vergebens. Hab ich was falsch gemacht?
    Gibt es eine PHP Lösung. Hattet ihr das selbe Problem oder nützt ihr es selber?

    Ich habe ebenfalls gelesen, dass es Nachteile haben soll, wegen den Suchmaschinen?

    Schönen Abend noch.

    lg newman
  • [wiki]Einführung in die AJAX Programmierung[/wiki] etc.
    Deine Technik, mit der du mit einem Seitenaufruf alle Unterseiten mitlädst, ist nun nicht wirklich die beste Lösung. Besonders die Performance und, wie du sagtest, die Suchmaschinenfreundlichkeit leiden darunter. Wenn du dir nun AJAX o. ä. aneignest, solltest du trotzdem an Fallbacks für Browser ohne JS-Unterstützung denken, womit du wieder bei einzelnen Seiten wärst.
    Alternativ könntest du auch die Seiten mit PHP generieren. Dadurch ist deine Seite zwar nicht clientseitig dynamisch, du kannst dir aber beispielsweise die redundante Angabe der Navigation durch Includes ersparen.
  • Danke Florian für die Antwort.

    Aber noch eine Programmiersprache. :( Irgenwann blick ich gar nicht mehr durch. Wie oft verwendest du Ajax?
    Noch eine schnelle Frage, bevor ich ins Bett gehe. Ist Ajax eine Erweiterung wie z.B CSS oder ersetzt es komplett eine Sprache?
    Leider hab ich mich mit Ajax noch nie befasst.

    Ich habe versucht eine PHP-Möglichkeit zu finden. Komischerweise nichts gefunden. :/

    Aber vielleicht muss ich mir doch mal ein Content Management System wie z.B Webspell runterladen und nachsehen, wie sie das Problem gelöst haben.

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von newman ()

  • newman schrieb:

    Noch eine schnelle Frage, bevor ich ins Bett gehe. Ist Ajax eine Erweiterung wie z.B CSS oder ersetzt es komplett eine Sprache?
    Leider hab ich mich mit Ajax noch nie befasst.
    Ajax ist keine eigene Sprache.

    Ajax ist eigentlich Javascript.
    Mit Ajax verwirklichst du eine Übertragung von Daten zwischen Server und Browser, ohne eine Seite neuzuladen oder ähnliches.

    Zum Beispiel gibt es Chats mit Ajax die automatisch neuladen etc. ohne Frame / ohne Seitenreload.

    Einen guten Einsteigerlink hat ja Florian schon gepostet.
  • n0x-f0x schrieb:

    Eine weitere Methode wären Iframes wobei die bei dem heutigen "Web2.0" getue eher out-of-date sind

    Ajax ist eigentlich nicht sehr kompliziert... Man muss nur hinter sie Idee kommen ;)


    Neee ^^, iframe möchte ich nicht benutzen. Wohl oder übel muss Ajax auch noch her. :) Kommt doch gut im Lebenslauf, wenn man zig Sprache drauf hat. :D
  • Wenn du in einer Bewerbung schreibst das du die Sprache AJAX beheerscht dann hast du was SEEEHHHR falsch gemacht. AJAX heißt „[wikipedia]Asynchronous JavaScript and XML[/wikipedia]“ und ist eine [wikipedia]Asynchrone Kommunikation[/wikipedia] (JS Funktion holt Daten zeitlich versetzt, also ohne darauf zu warten ob die Daten wirklich ankommen, vom Server). Es wurden vor allem XML Dokumente geladen was den letzten Teil des Namens erklärt. AJAX ist Fortschritt, aber keine Sprache"
    </nobrain>