Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Wysyłanie pliku XML i odbieranie obrazka, Jak to zrobić ?
Mackos
post
Post #1





Grupa: Zarejestrowani
Postów: 362
Pomógł: 44
Dołączył: 10.06.2009

Ostrzeżenie: (0%)
-----


Witajcie!
Obecnie mam problem tego typu iż muszę generować i wysyłać plik XML o określonych parametrach na dany URL i w odpowiedzi mam otrzymywać obrazek .gif
O ile udało mi się znaleźć jakiś kod do wysyłania tych plików XML na serwer, tak nie mam pojęcia w jaki sposób realizować odbiór GIF'a i jego zapis na moim serwerze.

A odnośnie jakiegoś kodu to wygląda on tak:
Kod
function postFile()
{
var xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");

xmlhttp.open("POST", "http://yoursite.com/sample.xml", false);
xmlhttp.send();

alert(xmlhttp.ResponseText);
}

I mam też kilka pytań (jako że z AJAX'em u mnie ciężko).
Czy to jest w ogóle dobry kod do wysyłania 'plików'?
Dlaczego tam jest "false" zamiast "true" ?
I czy czasem modyfikacja "alert(xmlhttp.ResponseText);" nie jest częściową odpowiedzią na to czego szukam - czyli odbioru odpowiedzi od serwera ?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Mackos
post
Post #2





Grupa: Zarejestrowani
Postów: 362
Pomógł: 44
Dołączył: 10.06.2009

Ostrzeżenie: (0%)
-----


No więc chce drobnymi kroczkami dojść do tego wszystkiego do tego stopnia żebym mógł osiągnąć swój cel, (bo jak się wszystko robi na hura to się nic nie zrobi dobrze)
I teraz podążając za w3schools zrobiłem sobie plik XML krasnoludki.xml
  1. <?xml version="1.0" encoding="ISO-8859-1"?>
  2.  
  3. <PIOSENKA>
  4.  
  5. <TYTUL>Krasnoludki</TYTUL>
  6.  
  7. <TEKST>My jestesmy krasnoludki ...</TEKST>
  8.  
  9. <AUTOR>NIEZNANY</AUTOR>
  10.  
  11. </PIOSENKA>


I próbowałem go wmontować pod ten przykład:
http://www.w3schools.com/ajax/ajax_xmlfile.asp
No i niestety fiasko, jednak nie załamywałbym się jeszcze gdyby nie fakt że spróbowałem to wdrożyć do pliku podanego tutaj:
http://www.w3schools.com/ajax/ajax_examples.asp
I częściowo mi się udało, mówię częściowo tylko dlatego że nie do końca wiem jak moge wyłuskać tekst z konkretnych znaczników.
Ten 'działający' plik wygląda następująco:
  1. <script type="text/javascript">
  2. function loadXMLDoc(url)
  3. {
  4. if (window.XMLHttpRequest)
  5. {// code for IE7+, Firefox, Chrome, Opera, Safari
  6. xmlhttp=new XMLHttpRequest();
  7. }
  8. else
  9. {// code for IE6, IE5
  10. xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
  11. }
  12. xmlhttp.onreadystatechange=function()
  13. {
  14. if (xmlhttp.readyState==4 && xmlhttp.status==200)
  15. {
  16. document.getElementById('TYTUL').innerHTML=xmlhttp.status;
  17. document.getElementById('PIOSENKA').innerHTML=xmlhttp.statusText;
  18. document.getElementById('AUTOR').innerHTML=xmlhttp.responseText;
  19. }
  20. }
  21. xmlhttp.open("GET",url,true);
  22. xmlhttp.send();
  23. }
  24. </head>
  25.  
  26. <h2>Retrieve data from XML file</h2>
  27. <p><b>Status:</b><span id="TYTUL"></span></p>
  28. <p><b>Status text:</b><span id="PIOSENKA"></span></p>
  29. <p><b>Response:</b><span id="AUTOR"></span></p>
  30. <button onclick="loadXMLDoc('krasnoludki.xml')">Get XML data</button>
  31.  
  32. </body>
  33. </html>
  34.  
  35.  

I z porównania tych dwóch plików html (nie działającego i działającego), domyślam się że 'xmlhttp.status' wyświetla status numerycznie czyli np.200
'xmlhttp.statusText' to samo tylko słownie, a xmlhttp.responseText treść pliku.
Jednak gdy dodałem drugą identyczną linijkę z ID innego znacznika to skrypt przestał dzialać. Więc obecnie potrzebuje zrozumieć w jaki sposób i na jakich zasadach następuje pobieranie danych z XML'a.
(mam nadzieję że nie napisałem zbyt chaotycznie, aha i wszystko testuje na lokalnie zainstalowanym XAMPP).

Alternatywnie mogę wykorzystać do zrobienia tego całego skryptu (celu finalnego) pliki z SOAP ale nie wiem, czy to już nie za głęboka woda dla mnie skoro mam z tym problem.

Ten post edytował Mackos 10.11.2010, 00:30:51
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 27.12.2025 - 00:26