Gå til innhold

Sende XML til PHP?


Anbefalte innlegg

Skrevet

Ø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?

Videoannonse
Annonse
Skrevet

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?

Skrevet (endret)

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
Skrevet

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.

Skrevet

Ikke glem å validere navnet på xmlfilen som skal hentes/sendes. Hvis du ikke kontrollerer hva som blir skrevet inn risikerer du at filer fra helt andre mapper hentes frem, og mye skadelig kode kan kjøres.

Skrevet

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

Skrevet

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?

Skrevet

SOAP er et format

Etter min mening så er det noe tull, men så har ikke jeg lest så mye om det.

Vil ikke anbefale deg å bruke det siden SOAP klassen til php er en stor verden i seg selv

 

HTTP POST er en metode å kalle på en webside, som GET og PUT

Skrevet

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

Skrevet

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.

Skrevet

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)?

Skrevet (endret)

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

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å
×
×
  • Opprett ny...