Bilddateien aus externer Datei beziehen.

  • Hallo,


    folgendes Problem:

    Ich würde gerne in diesem Code die rotmarkierten Textzeilen aus einer

    externen Datei beziehen, da ich den Code mehrfach verwende und die Bild Dateien öfter ändern möchte ohne dies auf jeder Seite zu tun zu müssen ,auf der ich diesen Code verwende.





    Hier ist der Code um den es geht:




    <script language="JavaScript" type="text/javascript">

    <!--

    var image = new Array();

    var link = new Array();

    /** Hier die (Zufalls)-Banner eintragen. **/

    image[1] = \'http://Hier die Bilder URL Adresse 1\';

    image[2] = \'http://Hier die Bilder URL Adresse 2\';

    image[3] = \'http://Hier die Bilder URL Adresse 3\';

    image[4] = \'http://Hier die Bilder URL Adresse 4\';

    image[5] = \'http://Hier die Bilder URL Adresse 5\';

    image[6] = \'http://Hier die Bilder URL Adresse 6\';

    image[7] = \'http://Hier die Bilder URL Adresse 7\';

    image[8] = \'http://Hier die Bilder URL Adresse 8\';

    image[9] = \'http://Hier die Bilder URL Adresse 9\';

    image[10] = \'http://Hier die Bilder URL Adresse 10\';

    /** Hier die (Zufalls)-Links eintragen. **/

    link[1] = \'http://Hier kommt die Zihladresse für die Bilder URL Adreese 1\';

    link[2] = \'http://Hier kommt die Zihladresse für die Bilder URL Adreese 2\';

    link[3] = \'http://Hier kommt die Zihladresse für die Bilder URL Adreese 3\';

    link[4] = \'http://Hier kommt die Zihladresse für die Bilder URL Adreese 4\';

    link[5] = \'http://Hier kommt die Zihladresse für die Bilder URL Adreese 5\';

    link[6] = \'http://Hier kommt die Zihladresse für die Bilder URL Adreese 6\';

    link[7] = \'http://Hier kommt die Zihladresse für die Bilder URL Adreese 7\';

    link[8] = \'http://Hier kommt die Zihladresse für die Bilder URL Adreese 8\';

    link[9] = \'http://Hier kommt die Zihladresse für die Bilder URL Adreese 9\';

    link[10] = \'http://Hier kommt die Zihladresse für die Bilder URL Adreese 10\';

    /** Ab hier nichts mehr ändern! **/

    var num = Math.random();

    var ran = Math.floor((image.length - 1) * num) + 1;

    document.write(\'<a target=_blank href="\' + link[ran] + \'"><img src="\' + image[ran] + \'" border="0" /></a>\' [Blockierte Grafik: https://www.ntmb.de/picture/smiley/forum/7.gif]
    ;

    //-->

    </script>


    Mein erster Ansatz war es über readfile zu versuchen.

    Mir wurde folgender Code empfohlen:

    PHP
    var image = new Array();
    var link = new Array();
    <?php readfile('datei.txt'); ?>
    /** Ab hier nichts mehr ändern! **/
    var num = Math.random();


    leider funktioniert es nicht und ich komme nicht weiter.


    Hat jemand einen Lösungvorschlag?


    Viele Grüße,

    Alex

  • Da das Javascript-Syntax ist, kannst Du diesen Code auch in eine js-Datei auslagern und mit dem script-Tag einbinden. D. h. die komplette Definition der beiden Arrays:

    in eine Datei, z. B. data.js schreiben, ohne script-Tags, und mit diesem Code einbinden:

    Code
    <script src="data.js"></script>
  • Ich habe jetzt wie folgt den Code geändert:


    und die data.js Datei enthält oben beschriebenen Code. Leider funktioniert es immer noch nicht. Was habe ich falsch gemacht?

  • Du hast jetzt die Skript-Tags verschachtelt. Erst die Daten einbinden und dann den Rest:

    Code
    <script src="data.js" ></script>
    <script> 
    /** Ab hier nichts mehr ändern! **/ 
    var num = Math.random(); 
    var ran = Math.floor((image.length - 1) * num) + 1; 
    document.write('<div id="zahl1">' + link[ran] + '</div><div id="nichtmarkieren"><img src="' + image[ran] + '" border="0" /></div></a>'); 
    </script>

    (type, language und die Kommentarzeichen braucht man heute nicht mehr.)

  • Leider funktioniert es immer noch nicht. Ich hab hier nochmal den Code komplett aufgelistet der auch genau so funktioniert.



    Wäre es auch möglich diesen Code komplett auszulagern?

  • Ja, Du kannst den Code auch komplett auslagern aber dann muss Du die script-Tags und die Zeilen mit den Kommentarzeichen <!-- //-->

    weg lassen. Ich hoffe, Du hast sie bisher nicht drin. Nur das was ich in Posting #3 gepostet habe, in die js-Datei. Der Browser weiß schon durch das Einbinden mit dem Script-Tag, dass es sich um Javascript handelt.

  • ich poste mal hier den Link zu meiner hochgeladenen js. Datei https://5dots.de/scripts/nurdasscript_edit6.js .

    Es funktioniert einfach nicht obwohl ich den Code wie folgt eingefügt habe:


    Code
    <script src="/scripts/nurdasscript_edit6.js" ></script>
    <script> 
    /** Ab hier nichts mehr ändern! **/ 
    var num = Math.random(); 
    var ran = Math.floor((image.length - 1) * num) + 1; 
    document.write('<div id="zahl1">' + link[ran] + '</div><div id="nichtmarkieren"><img src="' + image[ran] + '" border="0" /></div></a>'); 
    </script>
  • Dreamweaver ist auch der letzte Mist.

    Leider gibt es Editoren, die von sich aus den Code ungefragt und einfach ändern und später wundert man sich, warum das eine oder andere nicht mehr funktioniert oder die Datei im falschen Format abgespeichert wurde.


    Ganz früher schaute ich mir Dreamweaver mal an, da war es noch unter Macromedia :D und was daran nett war, war die geteilte Ansicht, Code und dieses WYSIWYG. Von Microsoft gab es Expression Web 4, was ebenfalls eine geteilte Ansicht hat, aber es wurde damals leider eingestampft, enthält auch nur noch alte Daten in Sachen Web, kann aber dennoch bei Gelegenheit bei einfacheren Sachen helfen und wurde nach der Einstellung kostenlos angeboten...


    Am besten einen gescheiten Texteditor nehmen, unter Windows zum Beispiel Notepad++ oder ähnliches verwenden, unter Linux gibt es auch nette Texteditoren ;)

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!