Siųsti XML naudojant XMLHTTP

Turinys

Aš sukūriau pagrindinį scenarijų, kaip siųsti XML eilutę ar failą į žiniatinklio serverį naudojant „Excel VBA“, ir paprastą PHP scenarijų duomenims gauti. Procesas naudoja XMLHTTP.

Tikslas yra sukurti paprastą įkėlimo scenarijų, kad serveris būtų atnaujintas naudojant XML duomenis, sukurtus iš skaičiuoklės. Tada leiskite kelioms galutinio vartotojo darbo knygoms priskirti centrinį failą ir sukurkite iš jo ataskaitas. Pagrindinės veržlės ir varžtai:

Pavyzdyje naudoju pagrindinę XML eilutę, kuri atrodo taip:

1234567891011 myxml = "<? xml version =" "1.0" "?>" & _"" & _"vyrų polo" ir _„4.89“ ir _"didelis" & _""

Naudotas PHP tiesiog grąžina duomenis, kurie buvo išsiųsti atgal į „Excel“. Taigi, jei gaunate tuos pačius XML duomenis, kuriuos išsiuntėte pranešimų laukelyje, tai padarėte teisingai. Jei įrašo duomenų nerandama, sakoma „be kauliukų“. Bandymo URL vieta yra /pl/xlxml.php

Akivaizdu, kad norėsite atnaujinti scenarijų, kad failo turinys būtų išsaugotas jūsų serveryje praktiniam naudojimui. Štai PHP, norint gauti XML įrašo duomenis ir juos grąžinti:

1234567891011121314151617

Taigi dabar žinome, ką siunčiame ir kaip jį gauti, atsiųskime XML duomenis!

Šis kodas buvo sukurtas naudojant „Excel 2003“ ir naudojant nuorodą Įrankiai-> Nuorodos-> „Microsoft XML v5.0“ VB redaktoriuje. Tai gerai pakomentuota, kad galėtumėte pamatyti viską, kas vyksta:

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687 Sub SendXML ()„HTTP kintamasisDim myHTTP kaip MSXML2.XMLHTTP„HTTP objektasNustatyti myHTTP = CreateObject ("msxml2.xmlhttp")"sukurkite dom dokumento kintamąjį'saugo siunčiamą xmlDim myDom kaip MSXML2.DOMDocument„Sukurkite„ DomDocument “objektąNustatyti myDom = CreateObject ("MSXML2.DOMDocument")„Prieš tęsdami įkelkite visą dokumentąmyDom.async = Netiesa„xml eilutės kintamasispakeiskite vietove, jei siunčiate iš failo arba URLDim myxml kaip eilutėmyxml = "<? xml version =" "1.0" "?>" & _"" & _"vyrų polo" ir _„4.89“ ir _"didelis" & _""“įkelia xml"pakeisti į. Įkelti failą ar URLmyDom.loadXML (myxml)'atidarykite ryšįmyHTTP. Atidarykite „įrašą“, _"https://www.automateexcel.com/excel/pl/xlxml.php", Netiesa“atsiųskite XMLmyHTTP.Send (myDom.XML)'Parodykite atsakymą„MsgBox myHTTP.ResponseText“Pabaiga Sub

Jei pasiekėte taip toli, pridėjote nuorodą ir paleidote kodą, pamatysite, kad tikrai PHP gavo ir grąžino XML:

Pastabos: aš tik dinamiškai sukūriau XML arba įkėliau jį iš XML failų ir URL, toliau - siųsti duomenis iš XML žemėlapio.

Aš pakartojau duomenis atgal į „Excel“, užuot rašęs juos į serverį, nes URL yra viešas, norėjau žmonėms suteikti smėlio dėžę ir į mano serverį nesiųsti atsitiktinių failų.

Padėsite svetainės plėtrą, dalintis puslapį su draugais

wave wave wave wave wave