Gå til innhold

Sende XML til PHP?


Anbefalte innlegg

Ønsker å lage en webside som mottar og sender tilbakemelding med XML... men hvordan får jeg til dette (å sende xml til en spesefikt php side for behandling)?

 

si jeg ønsker å sende xml som dette til siden: (bare tenkt scenario)

 

<?xml version="1.0" encoding='UTF-8'?>
<message>
 <from>Lars</from>
 <to>Server</to>
 <msg>Hello</msg>
</message>

 

og hvor responsen blir noe ala:

 

<?xml version="1.0" encoding='UTF-8'?>
<message>
 <from>Server</from>
 <to>Lars</to>
 <msg>Hello Lars</msg>
</message>

Noen tanker?

Lenke til kommentar
Videoannonse
Annonse

Du kan ta en titt på SimpleXML, hvis serveren din støtter dette.

 

Du tenker litt mer på behandling av den tilsendte XML fila til min php fil?? Jeg lurte i det store og det hele hvordan man SENDER en XML fil til en php side... ikke at siden selv rekvirer den med include eller kjører fopen(URL) eller noe.

 

Kan det gjøres med POST (form) feks? Evt hvordan?

Lenke til kommentar

Beklager, det gikk litt fort da jeg leste posten din.

 

En løsning er å oppgi xmlfilen i urlen:

 

fil.php?xmlfil=test.xml

$xml = simplexml_load_file( $_GET['xmlfil'] );

 

En annen løsning kan være, som du sier, et skjema. I eksempelet under skriver du inn filnavnet til xmlfilen i feltet, men det går også an å finne alle xmlfiler i en gitt mappe og lage et dropdownfelt.

 

$xml = simplexml_load_file( $_POST['xmlfil'] );

<form action="lorem.php" method="post">
   <input type="text" name="xmlfil" value="test.xml" />
</form>

Endret av Runar
Lenke til kommentar

En annen løsning kan være, som du sier, et skjema. I eksempelet under skriver du inn filnavnet til xmlfilen i feltet, men det går også an å finne alle xmlfiler i en gitt mappe og lage et dropdownfelt.

 

$xml = simplexml_load_file( $_POST['xmlfil'] );

<form action="lorem.php" method="post">
   <input type="text" name="xmlfil" value="test.xml" />
</form>

 

Men så bra da... jeg hadde en bang anelse om det da jeg har overført "vanlige" (jpeg, txt++) med et HTML skjema. takker fo bukker for svar, tester når jeg kommer hjem.

Lenke til kommentar

Nå vet jeg ikke hvor avansert du vil ha dette, men hvis du vil ha en god løsning så vil jeg si at en HTTP PUT forespørsel blir det beste

Da sender du faktisk fila.

 

Men som sagt, kommer an på hvor avansert du skal ha det

 

Jeg tror det skal gå veldig bra om jeg bruker HTML POST... tror ikke jeg trenger å sende hele fila. Finnes det andre måter å sende på? Leste noe om SOAP men det er kanskje noe annet?

Lenke til kommentar

Hvordan kan du si det?

Klarer ikke å se hvordan det kan stemme

 

Så lenge man escaper riktig så vil det ikke bli noe problemer, men igjen, JSON parseren til PHP er elendig, og når man ikke har et bra system for å kunne parse JSON så hjelper det lite hvor mye mer egna det er

Lenke til kommentar

Fordi XML er ekstremt bloated og JSON er lettere å prosessere grunnet den enklere strukturen. XML har sine bruksområder, men i et data exchange API mener jeg at JSON bør foretrekkes. Nå har ikke jeg hatt så altfor store problemer med JSON-parseren i PHP så problemene der i gården kan jeg ikke uttale meg om.

Lenke til kommentar

Greit, men jeg ser fremdeles ikke noen grunn til at han skal bevege seg ut på så altfor ukjent grunn her

 

Får jeg spørre TS om hva dette skal brukes til (av ren nysgjerrighet)?

 

Jeg ønsker at php sider kommuniserer med hverandre uten at det er avhengig av html form og en bruker som trykker på ensubmitknapp... En applikasjon feks.

XML er en grei standard som tilbyr god struktur. Sum sumarum skal serveren motta data i XML, kjøre litt database spørringer og levere fra seg data igjen (også XML).

Endret av South_Bridge
Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...