Avatar billede colman Nybegynder
04. december 2001 - 14:04 Der er 4 kommentarer

Nyheds modul....

Hejsa...jeg skal lave et nyhedsmodul vha. XML.

Jeg har en bog om  XML og har fattet noget af det, men mit problem er at skrive til en XML fil - kan det lade sig gøre og hvordan ?

Modulet består af et billede og en kort tekst. Klikker man på billedet/teksten skal det uddybence tekst \"poppe\" op i en anden box...

Avatar billede pawd Nybegynder
04. december 2001 - 15:49 #1
Når du siger \"en anden box\", mener du så et nyt vindue ?
Avatar billede Slettet bruger
04. december 2001 - 16:07 #2
Hvis du bruger Microsofts XML Parser (MSXML 3 el. 4) kan du (såfremt du har rettighederne på serveren) åbne en XML fil, rette i den, og gemme den rettede fil igen.

Det gøres f.eks. sådan her: (JScript ASP)

var obj = Server.CreateObject(\"MSXML.DOMDocument\");
obj.load(Server.MapPath(\"/xml/fil.xml\"));

var strXML = obj.xml;

... (lav ændringer her ...)

obj.save(Server.MapPath(\"/xml/fil.xml\"));

/CS
Avatar billede tobias_cool Nybegynder
22. december 2001 - 13:41 #3
<xmlData>
<del>
<img src=\"blabla.gif\"></img>
<tekst>Her står jeg sammen med min første hjemmeside</tekst>
</del>
</xmlData>

DOM

var xmlFil
    xmlFil = new ActiveXObject(\"Msxml2.DOMDocument.4.0\");
    xmlFil.async=\"false\";
    xmlFil.load(\"fil.xml\");
    Dinxmlfil=xmlFil.documentElement;

var strHTML = new Array();
    var b = 1;
    var node = \'\';
   
    function skriveXML(){
        node = xmlFil.documentElement.firstChild;
            while(node){
                if(node.hasChildNodes && node.nodeName == \'del\'){
               
                strHTML[b]=aDel(node);}
                node = node.nextSibling;
                b++;
            }
           
    }

var betHTML
   
    function aDel(noder){
    betHTML = \'\';
    noder = noder.firstChild
while(noder){
                       
            else if(noder.hasChildNodes && noder.nodeName == \'tekst\'){
            var indholdet = noder.text
           
            betHTML += \'<p style=\"\'+style+\'\">\'+indholdet.replace(objCrLf,\'<br>\')+\'</p>\';}
               
            else if(noder.nodeName == \'img\'){
            betHTML += aImage(noder);}
               
            noder = noder.nextSibling;
        }
        return betHTML
    }
var xtraHTML = \'\';
   
    function aImage(sti){
    xtraHTML = \'\';
    xtraHTML += \'<img src=\"\'
    xtraHTML += sti.getAttribute(\"src\")+\'\" style=\"\';
    xtraHTML += sti.getAttribute(\"style\")+\'\">\';
   
    return xtraHTML
    }

der er nok nogle fejl jeg tog det ud fra det script jeg bruger på min egen hjemmeside
Avatar billede tobias_cool Nybegynder
22. december 2001 - 13:46 #4
function skriveXML(){
        node = xmlFil.documentElement.firstChild;
            while(node){
                if(node.hasChildNodes && node.nodeName == \'del\'){
               
                strHTML[b]=<a href=\"\'+en URL+\'\">aDel(node);</a>}
                node = node.nextSibling;
                b++;
            }
           
    }
Jeg læste ikke helt igennem men Url skal så være en url man skriver som attribut i \"Del\" og henter som node.getAttributeNode(\"url\")

og del bliver i xml\'et til <del url=\"http://www.url.dk\">
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester