Ergebnis 1 bis 13 von 13
  1. #1
    Avatar von dkdenz
    dkdenz ist offline Foren-Gott
    registriert
    13-04-2004
    Ort
    Lübeck
    Beiträge
    12.050

    [AJAX] Externe Datei einbinden

    Wir hatten das schon ein paar Mal im Forum:
    'Kann ich mit JavaScript eine Textdatei in eine Webseite einbinden,
    denn eine serverseitige Sprache steht nicht zur Verfügung?'
    Mit JavaScript in diesem Beispiel nicht direkt, aber über den 'Umweg' AJAX .
    Nachfolgend ein Snippet, welches genau das bewirkt:
    Code:
    <?xml version="1.0" encoding="iso-8859-1"?>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="de">
    <head>
    <title>Dokumenttitel</title>
    <script type="text/javascript">
    //<![CDATA[
    var XMLHTTP = null;
    if (window.XMLHttpRequest) {
        XMLHTTP = new XMLHttpRequest();
    } else if (window.ActiveXObject) {
        try {
            XMLHTTP =
                new ActiveXObject("Msxml2.XMLHTTP");
        } catch (ex) {
        try {
            XMLHTTP =
                new ActiveXObject("Microsoft.XMLHTTP");
        } catch (ex) {
        }
        }
    }
    function DatenAusgeben() {
        if (XMLHTTP.readyState == 4)  {
            var d = document.getElementById("Daten");
            var s = document.getElementById("Status");
            d.innerHTML += XMLHTTP.responseText;
            s.innerHTML += XMLHTTP.status + " (" +
                           XMLHTTP.statusText + ")";
        }
    }
    window.onload = function() {
        XMLHTTP.open("GET", "daten.txt");
        XMLHTTP.onreadystatechange = DatenAusgeben;
        XMLHTTP.send(null);
    }
    //]]>
    </script>
    </head>
    <body>
        <p id="Daten">Daten vom Server: </p>
        <p id="Status">HTTP-Status:  </p>
    </body>
    </html>
    Nachtrag: Nicht die daten.txt vergessen mit hochzuladen...

    Edit:
    Achgottchen, ich habe ja den Beispiellink vergessen: http://dkmd.de/tests/ajax/ajax.html

    So sieht im Beispiel übrigends die daten.txt aus:
    Dieser Text wird mit AJAX ausgelesen! Ist das nicht genial?<br />Was aber nat&uuml;rlich nicht mehr funktioniert, wenn JS deaktiviert ist...
    Geändert von dkdenz (03-06-2006 um 16:07 Uhr)

  2. #2
    raid_ox ist offline Foren As
    registriert
    08-06-2006
    Ort
    Hamburg
    Beiträge
    88

    AW: [AJAX] Externe Datei einbinden

    aber aus externe server geht nicht oder, wegen firefox sicherheitsupdate? hast du ne idee dazu?

  3. #3
    Avatar von Comet
    Comet ist offline Administrator
    registriert
    17-09-2001
    Ort
    Austria | Westendorf
    Beiträge
    2.182

    AW: [AJAX] Externe Datei einbinden

    Hi!

    Ich habe, zugegeben etwas zu spät, eine Idee dazu, bzw. habe ich das schon so gemacht!!

    Am eigenen Server ein php-Skript laufen lassen, das per socket-Zugriff aufs 80er Port des gewünschten Servers die Daten mehr oder weniger durchstreamt, ein kleines Beispiel:

    PHP-Code:

    <?php

    $farAwayUrl    
    'www.yourdomain.com';
    $farAwayScript 'myScriptDir/yourscirptOnTheOtherServer.php';

    $connection fsockopen$farAwayUrl80 );

    if( 
    $connection ) {
      
    $header  "GET /".$farAwayScript." HTTP/1.1\r\n";
      
    $header .= "Host: ".$farAwayUrl."\r\n";
      
    $header .= "Connection: Close\r\n\r\n";

      
    fwrite$connection$header );
      while ( !
    feof$connection ) ) {
         echo 
    fgets$connection128 );
      }
      
    fclose$connection );
    } else {
      echo 
    "ConnProb";
      die( );
    }

    ?>
    Hierbei wird die Ausgabe des Script "yourscirptOnTheOtherServer.php" im Verzeichniss "myScriptDir" unter der URL/Host "www.yourdomain.com" durchgestreamt und kann über eben diese dargestellte php-Datei die du irgendwo auf deinen Server ablegst abgerufen werden.

    Du kannst dann auch im responseText zB. den Wert ConnProb abfragen und ein Connection-Problem anzeigen, usw. und sofort
    ..:::Andi:::..

  4. #4
    Avatar von stripmitz
    stripmitz ist offline Tripel-As
    registriert
    24-03-2006
    Beiträge
    160

    AW: [AJAX] Externe Datei einbinden

    @Comet:

    'Kann ich mit JavaScript eine Textdatei in eine Webseite einbinden,
    denn eine serverseitige Sprache steht nicht zur Verfügung?'
    ...

  5. #5
    niilo ist offline Grünschnabel
    registriert
    08-09-2006
    Beiträge
    1

    AW: [AJAX] Externe Datei einbinden

    hallo zusammen,
    ich möchte ein php-skript einbinden ("<iframe>" und "include()" scheiden aus),
    das ein formular <method="post"> enthält.

    nach <submit> werden unterschiedliche bereiche des skripts ausgeführt.

    DAS PROBLEM:
    der Code von dkdenz (s.o.) bindet das skript zwar ein, die "post-daten" erreichen das skript jedoch NICHT

    ... nach <submit> wird einfach das skript im "start-zustand" aufgerufen.

    Nun hab ich gelesen, dass möglicherweise...

    XMLHTTP.open('POST', 'skript.php','?');
    XMLHTTP.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
    XMLHTTP.onreadystatechange = DatenAusgeben;
    XMLHTTP.send(?);

    ... im korrekten syntax ein lösungsansatz ist.

    dies ist mein erster kontakt mit ajax und ich habe nur sehr dünne javascript kentnisse.

    kann mir da jemand weiterhelfen?

    vielen dank!

  6. #6
    pit-r Guest

    AW: [AJAX] Externe Datei einbinden

    Moin!
    Zitat Zitat von niilo
    XMLHTTP.send(?);
    Zum Versenden von POST-Daten mußt Du Dein Fragezeichen durch einen string ersetzen, der aufgebaut ist wie ein GET-query-string:

    var senden='name1=wert1&name2=wert2&name3=wert3';
    XMLHTTP.send(senden);

    In Deinem Fall entsprächen die Namen denen der Formularelemente und anstelle der Werte müßtest Du die values der Formularelemente übergeben...

    Ahoi - Pit

  7. #7
    Avatar von Comet
    Comet ist offline Administrator
    registriert
    17-09-2001
    Ort
    Austria | Westendorf
    Beiträge
    2.182

    AW: [AJAX] Externe Datei einbinden

    ... dann geht es natürlich nicht, daran führt kein Weg vorbei, entweder hat man eine serverseitige Skriptsprache zur Verfügung oder man gibt sich damit zufrieden, daß das eben in allen Browsern mit einer gewissen Sicherheitsstufe nicht funktionieren wird.
    ..:::Andi:::..

  8. #8
    ice24 ist offline Grünschnabel
    registriert
    23-12-2006
    Beiträge
    2

    AW: [AJAX] Externe Datei einbinden

    Hallo Dkdenz,

    Ich bin auf dein Script gestoßen und fand es toll. Ich muss wohl vorausschicken, dass ich nicht gerade so der Pro in Sachen Internet bin, hab gerade erst damit begonnen....
    Ich hab ne Frage, die du wahrscheinlich relativ einfach zu lösen verstehen wirst:

    Dein Script ("[AJAX] Externe Datei einbinden") erlaubt es, eine externe .txt-Datei in eine HTML - Datei einzubinden. Wenn ich jetzt den Code enstprechend für, sagen wir mal 5 weitere externe Dateien erweitern möchte, was müsste ich dazu ergänzen!?
    Wäre cool, wenn du mir helfen könntest, wäre dir sehr dankbar, weil ich einfach keinen Plan mehr hab, wie es anzustellen ist.

    Grüße, ice24

    ice-mobil@gmx.net

  9. #9
    Avatar von dkdenz
    dkdenz ist offline Foren-Gott
    registriert
    13-04-2004
    Ort
    Lübeck
    Beiträge
    12.050

    AW: [AJAX] Externe Datei einbinden

    Das Snippet ist eine nette Spielerei, aber ich perönlich würde das niemals benutzen, denn dann bin ich von der Browsereinstellung des Users abhängig.
    Hat der JS deaktiviert, bekommt er nix zu sehen.
    Greife besser auf die include-Funktion von PHP zurück.
    PHP: include - Manual

  10. #10
    ice24 ist offline Grünschnabel
    registriert
    23-12-2006
    Beiträge
    2

    AW: [AJAX] Externe Datei einbinden

    Danke für den Tipp! Ich werde mich mal mit PHP Versuchen; die Seite die du mir empfohlen hast, macht einen guten Eindruck --> ich hoffe, dass ich damit zurechtkomme!
    Schöne Weihnachtsfeiertage!

    Grüße ice24

  11. #11
    NichtsLUZ ist offline Grünschnabel
    registriert
    27-07-2007
    Beiträge
    1

    AW: [AJAX] Externe Datei einbinden

    Guten Tag,
    Bei mir läuft das Script auch. Doch ist da nicht irgendetwas falsch?

    Du lädst eine Datei mit XML-Befehlen (Beispiel: <br />) mit JS vom Server. Das was du erhälst fügst du in bestimmte Abschnitte. Doch wenn ich mit meinem HTML Validator die Seite validiere, nachdem JS den Quellcode verändert hat, zeigt er Fehler an. Die XML-Befehle wurden in HTML-Befehle umgewandelt (Beispiel: <br>)

    Benutzt habe ich den HTML-Validator, dens als Firefox-Addon gibt.
    "Html-Validator 0.8.3.9"

    Klar kann man sich sagen, egal, Hauptsache es läuft, doch ich bin manchmal ein Perfektionist und bei mir darf der Validator deshalb keine Fehler anzeigen

  12. #12
    Avatar von dkdenz
    dkdenz ist offline Foren-Gott
    registriert
    13-04-2004
    Ort
    Lübeck
    Beiträge
    12.050

    AW: [AJAX] Externe Datei einbinden

    Zitat Zitat von NichtsLUZ Beitrag anzeigen
    doch ich bin manchmal ein Perfektionist
    Find' ich gut...

  13. #13
    cybaer ist offline Kaiser
    registriert
    12-09-2006
    Beiträge
    1.338

    AW: [AJAX] Externe Datei einbinden

    Zitat Zitat von NichtsLUZ Beitrag anzeigen
    Klar kann man sich sagen, egal, Hauptsache es läuft, doch ich bin manchmal ein Perfektionist und bei mir darf der Validator deshalb keine Fehler anzeigen
    Fügst Du denn den Code wirklich in ein XHTML-Dokument ein (also Content-Type "application/xhtml+xml"), oder fügst Du den Code in ein (eigentlich) fehlerhaftes HTML-Dokument ein (Content-Type "text/html")? 1)

    Tip: Der DOCTYPE ist für einen Validator interessant, zur Bewertung, ob eine bestimmte Syntax eingehalten wird. Für den Browser ist der Content-Type relevant, mit dem der Server das Dokument ausliefert.


    1) Rhetorische Frage.
    Gruß, Cybaer

Ähnliche Themen

  1. externe js-dat. einbinden - funktioniert nicht
    Von deSEIN im Forum JavaScript
    Antworten: 9
    Letzter Beitrag: 19-04-2005, 22:27
  2. Externe .js Datei in Ebene einbinden...
    Von dirkdiggler im Forum JavaScript
    Antworten: 7
    Letzter Beitrag: 28-08-2004, 13:03
  3. <style> wie <script> in externe Datei tun?
    Von BerndDasBrot im Forum Allgemeines
    Antworten: 6
    Letzter Beitrag: 13-07-2004, 19:57
  4. inhalt aus Datei in Flash einbinden
    Von sanchez im Forum Flash
    Antworten: 5
    Letzter Beitrag: 28-05-2004, 11:12
  5. phpbb css und js Datei einbinden
    Von .holger im Forum Serverseitige Programmierung
    Antworten: 3
    Letzter Beitrag: 26-05-2002, 14:22

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •