Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [XML][PHP]foreach i zapis do pliku xml
Forum PHP.pl > Forum > Przedszkole
buker
Witam mam taki fragment kodu:
  1. foreach($images as $image) {
  2. echo '
  3. <image imageURL="images/' . $image . '.jpg" thumbURL="m_' . $image . '" linkURL="images/' . $image . '" linkTarget="_blank">
  4. <caption>
  5. <![CDATA[
  6. ]]>
  7. </caption>
  8. </image>
  9. ';
  10. }


Potrzebuje zeby zamiast wyswietlic to na stronie zapisywalo sie wszystko do pliku. Myslalem zeby przekazac wynik foreacha do zmiennej ale cos mi nie wychodzilo.
cim
Witam,

może zamiast echo to dołączenie do zmiennej i później zapis do pliku:

  1. $tresc = '';
  2. foreach($images as $image) {
  3. $tresc .= '... kod ...';
  4. }
  5.  
  6. file_put_contents("sciezka_i_nazwa_pliku", $tresc);


Przy większej ilości danych możesz otworzyć uchwyt do pliku i dopisywać każdy obrazek bezpośrednio do pliku.

Pozdrawiam
buker
Nie dziala mi ten skrypt. Plik xml sie nie zmienia
Ghost_78
Moze sprawdz tak:
  1. foreach($images as $image) {
  2. $tresc .= '... kod ...';
  3. }
  4. $file = fopen ('sciezka_do_pliku', 'w+');
  5. fwrite($file, $tresc);
  6. fclose($file);
buker
  1. <?php
  2. header("Content-Type:text/xml");
  3.  
  4. $pocztaek .= '<?xml version="1.0" encoding="UTF-8" ?>
  5. <simpleviewergallery useFlickr="false" resizeOnImport="true" cropToFit="false" thumbPosition="BOTTOM" thumbRows="1" thumbColumns="7" showOpenButton="true" showFullscreenButton="true" backgroundColor="EBE2C2" backgroundTransparent="false" galleryStyle="MODERN" frameWidth="5">
  6. ';
  7.  
  8. $directory = "image/";
  9. $images = glob("" . $directory . "*.jpg");
  10.  
  11. foreach($images as $image) {
  12. $tresc .='
  13. <image imageURL="images/' . $image . '.jpg" thumbURL="m_' . $image . '" linkURL="images/' . $image . '" linkTarget="_blank">
  14. <caption>
  15. <![CDATA[
  16. ]]>
  17. </caption>
  18. </image>
  19. ';
  20. }
  21. $koniec .='</simpleviewergallery>';
  22.  
  23. Nie mam pojecia co tu jeszcze jest nie tak
  24. $caly = $poczatek+$tresc+$koniec;
  25. $file = fopen ('gallery.xml', 'w+');
  26. fwrite($file, $caly);
  27. fclose($file);
  28. ?>


To jest cały kod a to jest błąd

Błąd parsowania XML: niezrozumiała seria znaków po elemencie dokumentu
Obszar: http://localhost/xml_php/jestemXML-em.php
Numer linii: 2, kolumna 1:<font size='1'><table class='xdebug-error' dir='ltr' border='1' cellspacing='0' cellpadding='1'>
^
Hpsi
Ogólnie masz literówke w skrypcie smile.gif
Zerknij na linie: 4 oraz 24
$pocztaek .= '...';

$caly = $poczatek+$tresc+$koniec;

Reszta wydaje mi się raczej ok, ale nie mam możliwości aktualnie sprawdzenia tego
buker
  1. <?php
  2. header("Content-Type:text/xml");
  3.  
  4. $poczatek .= '<?xml version="1.0" encoding="UTF-8" ?>
  5. <simpleviewergallery useFlickr="false" resizeOnImport="true" cropToFit="false" thumbPosition="BOTTOM" thumbRows="1" thumbColumns="7" showOpenButton="true" showFullscreenButton="true" backgroundColor="EBE2C2" backgroundTransparent="false" galleryStyle="MODERN" frameWidth="5">
  6. ';
  7.  
  8. $directory = "image/";
  9. $images = glob("" . $directory . "*.jpg");
  10.  
  11. foreach($images as $image) {
  12. $tresc .='
  13. <image imageURL="images/' . $image . '.jpg" thumbURL="m_' . $image . '" linkURL="images/' . $image . '" linkTarget="_blank">
  14. <caption>
  15. <![CDATA[
  16. ]]>
  17. </caption>
  18. </image>
  19. ';
  20. }
  21. $koniec .='</simpleviewergallery>';
  22. $caly = $poczatek+$tresc+$koniec;
  23. $file = fopen ('gallery.xml', 'w+');
  24. fwrite($file, $caly);
  25. fclose($file);
  26.  
  27.  
  28.  
  29. ?>


Literowki poprawione ale nie dalo to zadnego skutku
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.