Toon posts:

[XML] Images in XML file

Pagina: 1
Acties:
  • 63 views sinds 30-01-2008

Verwijderd

Topicstarter
Ik heb een XML file (van een IPB2.0(php-forum) skin) met daarin een aantal gif en jpg images erin. Is er enige manier hoe ik deze eruit zou kunnen krijgen. Het zou door middel van een script op mijn server moeten werken, maar mijn hostingbedrijf accepteerd deze bewerkingen niet. Ik kan me herinneren dat iemand zei dat je deze met een bepaalde applicatie is om deze bestanden toch uit de XML file te kunnen halen. Kan iemand mij helpen?

*hoop dat ik deze vraag in de juiste subforum heb geplaats*

  • mulder
  • Registratie: Augustus 2001
  • Laatst online: 09:57

mulder

ik spuug op het trottoir

Er staan verwijzingen naar die bestanden in, dan kun je ze dus daar vandaan kopieeren/downloaden?

[ Voor 3% gewijzigd door mulder op 05-07-2005 22:31 ]

oogjes open, snaveltjes dicht


  • Sybr_E-N
  • Registratie: December 2001
  • Laatst online: 05-05 21:37
Via google kom ik op base64 encode/decode en/of binair inlezen. Maar wil je het nou zelf gaan programmeren (het inlezen van een plaatje uit een XML bestand) of zoek je juist een kant en klaar programma?

Verwijderd

Topicstarter
Sybr_E-N schreef op dinsdag 05 juli 2005 @ 22:49:
Via google kom ik op base64 encode/decode en/of binair inlezen. Maar wil je het nou zelf gaan programmeren (het inlezen van een plaatje uit een XML bestand) of zoek je juist een kant en klaar programma?
Een kant en klaar programma zou natuurlijk het handigst zijn, ik heb er al naar gezocht maar niets gevonden.
Ik ben eerlijk gezegd totaal onbekend hiermee, maar voor mij is eigenlijk de noodzaak dat ik de desbetreffende bestanden zo snel mogelijk hieruit krijg. Ik ben namelijk aan een deadline gebonden. Zolang ik geholpen kan worden hiermee of in ieder geval een advies zou hebben hoe verder te gaan zou enorm handig zijn.

  • semicolon
  • Registratie: Mei 2004
  • Niet online
1. Open het bestand met je favoriete programmeertaal
2. Haal alle '<file>' elementen eruit
3. Loop door alle <file> elementen
4. Haal de <filename> en <binary> eruit
5. Als binary niet 1 is stop en ga verder met het volgende item
6. Als binary 1 is, decodeer het bestand en sla het op onder de goede <filename>

6 stappen, 20 regels code (kan waarschijnlijk nog korter) in PHP.
Er horen in dit forum eigenlijk geen script-requests (zie P&W Beleid!) maar ik ben in een gulle bui, en heb het nu toch al gemaakt.
Topics en posts in de trant van "ik kan dat en dat scriptje niet meer vinden" of "dit programma lukt niet, wie kan het voor me afmaken?" worden direct op slot gedaan. Houd je aan de quickstart.
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<?php
 $fS = file_get_contents( 'ipb.xml' );
 preg_match_all(  '~\<file\>(.+?)\<\/file\>~is' , $fS , $m );
 $m = $m[0];
 foreach( $m as $txt ){
   preg_match( '~<filename>([a-zA-Z0-9-_\.]+)</filename>~i' , $txt , $s );
   $filename = $s[1];
   preg_match( '~<binary>([0-9]{1})</binary>~i' , $txt , $s );
   $binary = $s[1];
   if( $binary == "1" ){
     preg_match( '~<content>(.+?)</content>~is' , $txt , $s );
     $content = $s[1];
     $fp = fopen( "files/" . $filename , "a+" );
     if( $fp ){
       fwrite( $fp , base64_decode( $content ) );
       fclose( $fp );
     }
   }
 }
?>


ipb.xml moet het xml bestand zijn natuurlijk.
het php bestand moet in een map staan waar een andere map bij staat (files), welke schrijfbaar moet zijn. (Chmod 777)

Mappen structuur (voorbeeld):
/ipbrip
/ipbrip/file.php
/ipbrip/ipb.xml
/ipbrip/files/ (schrijfbaar!)

[ Voor 9% gewijzigd door semicolon op 05-07-2005 23:08 ]

:D/-<


  • NMe
  • Registratie: Februari 2004
  • Laatst online: 15-04 22:07

NMe

Quia Ego Sic Dico.

Verwijderd schreef op dinsdag 05 juli 2005 @ 22:54:
Een kant en klaar programma zou natuurlijk het handigst zijn, ik heb er al naar gezocht maar niets gevonden.
Sorry, maar in Programming & Webscripting doen we niet aan kant en klare scripts. Deze vallen namelijk onder het kopje "scriptrequests", die we niet toestaan volgens onze plaatselijke policy, zoals je ook in onze FAQ had kunnen lezen. Verder: als je problemen hebt met een file van Invision PowerBoard, denk je dan niet dat het handiger is die vraag op hun supportfora te stellen? ;)

'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.

Pagina: 1

Dit topic is gesloten.