Avatar billede cyberdude Nybegynder
21. april 2005 - 16:09 Der er 1 kommentar og
1 løsning

XML form modtages, filtere ALT væk undtaget dataene - hvordan

Hejsa

Jeg modtager en XML fil via
$request = $HTTP_RAW_POST_DATA;


Inholdet af $request ser sådant her ud :
ÿþ< ? x m l v e r s i o n = " 1 . 0 " e n c o d i n g = " U T F - 1 6 " ? > < ? x f a g e n e r a t o r = " X F A 2 _ 0 " A P I V e r s i o n = " 2 . 2 . 5 0 2 8 . 0 " ? > < x d p : x d p x m l n s : x d p = " h t t p : / / n s . a d o b e . c o m / x d p / " > < x f a : d a t a s e t s x m l n s : x f a = " h t t p : / / w w w . x f a . o r g / s c h e m a / x f a - d a t a / 1 . 0 / " > < x f a : d a t a > < f o r m 1 > < S u b f o r m _ D o c u m e n t > < S u b f o r m _ M e d l e m s o p l y s n i n g e r > < M e d l e m s n u m m e r _ T e x t > 0 0 0 0 0 0 - 0 1 < / M e d l e m s n u m m e r _ T e x t > < C P R n u m m e r _ T e x t > 0 0 0 0 0 0 - 0 0 0 2 < / C P R n u m m e r _ T e x t > < N a v n _ T e x t > 3 < / N a v n _ T e x t > < A d r e s s e _ T e x t > 4 < / A d r e s s e _ T e x t > < P o s t n u m m e r o g B y _ T e x t > 5 < / P o s t n u m m e r o g B y _ T e x t > < T e l e f o n n u m m e r _ T e x t > 0 0 0 0 0 0 0 6 < / T e l e f o n n u m m e r _ T e x t > < E p o s t a d r e s s e _ T e x t > n o s @ m u g . c o m < / E p o s t a d r e s s e _ T e x t > < / S u b f o r m _ M e d l e m s o p l y s n i n g e r > < S u b f o r m _ A n s æ t t e l s e s o p l y s n i n g e r > < S t i l l i n g _ T e x t > 7 < / S t i l l i n g _ T e x t > < F r a t r æ d e l d a t o _ T e x t > 8 < / F r a t r æ d e l d a t o _ T e x t > < U d m e l d i n g s d a t o > 9 < / U d m e l d i n g s d a t o > < / S u b f o r m _ A n s æ t t e l s e s o p l y s n i n g e r > < S u b f o r m _ B r a n d v æ s e n o p l y s n i n g e r > < R e g i o n _ T e x t > 0 < / R e g i o n _ T e x t > < A m t _ T e x t > 0 < / A m t _ T e x t > < K o m m u n e _ T e x t > 0 < / K o m m u n e _ T e x t > < / S u b f o r m _ B r a n d v æ s e n o p l y s n i n g e r > < T i l l i d s m a n d s u n d e r s k r i f t _ T e x t / > < / S u b f o r m _ D o c u m e n t > < / f o r m 1 > < / x f a : d a t a > < / x f a : d a t a s e t s > < e x e c E v e n t c o n t e x t = " x f a [ 0 ] . f o r m [ 0 ] . f o r m 1 [ 0 ] . # p a g e S e t [ 0 ] . P a g e 1 [ 0 ] . B u t t o n 1 [ 0 ] " a c t i v i t y = " p r e S u b m i t " / > < p d f h r e f = " . . / . . / . . / . . / . . / D o c u m e n t s a n d S e t t i n g s / W E B @ MyPc / D e s k t o p / u d m e l d e l s e 2 _ f p b . p d f " x m l n s = " h t t p : / / n s . a d o b e . c o m / x d p / p d f / " / > < x f d f x m l n s = " h t t p : / / n s . a d o b e . c o m / x f d f / " x m l : s p a c e = " p r e s e r v e " > < a n n o t s / > < / x f d f > < / x d p : x d p >

Spørgsmålet er nu hvordan hulen får jeg filtreret de data ud som jeg skal bruge...

Kan man lave noget søgning i filen, og så oprette et array som indeholder de data som bliver hevet ud...

Jeg har P.T. 3 forskellige form's der bliver sendt på den her måde og flere kan forventes, så et script som blot løber $request igennem og fjerner al det overflødige ville være at foretrække, således at alle form's kan sende til samme script (de 3 form's er meget forskellige)

I eksemlet der er postet med her, drejer det sig om følgende jeg gerne skulel få ind i et array :
$FormData = new_array();
$FormData => "0 0 0 0 0 0 - 0 1";
$FormData => "0 0 0 0 0 0 - 0 0 0 2";
OSV...

Jeg er desvære lang fra en hej til de der preg_match funktioner :-(

Nogen hjælp at hente ?
Avatar billede tjens Nybegynder
21. april 2005 - 23:37 #1
Avatar billede cyberdude Nybegynder
11. juni 2005 - 15:42 #2
fandtg en løsning med FDF filer istedet for form-xml som ovenstående er bygget ud fra
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
Vi tilbyder markedets bedste kurser inden for webudvikling

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