Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [HTML][XML][PHP]Generowanie stron html z pliku xml
Forum PHP.pl > Forum > Przedszkole
Odin
Witam,
Mam trochę skomplikowane pytanie i mam nadzieje, że uda mi się go dobrze przedstawić.

1, Generuje plik xml z produktami:

Plik ma postać:
  1. <produkt>
  2. <id>
  3. 1
  4. </id>
  5. <producent>
  6. <![CDATA[Inny]]>
  7. </producent>
  8. <idkategorii>
  9. 3
  10. </idkategorii>
  11. <kategoria>
  12. <![CDATA[Nazwa kategorii]]>
  13. </kategoria>
  14. <nazwa>
  15. <![CDATA[Nazwa produktu]]>
  16. </nazwa>
  17. <opis>
  18. <![CDATA[ Opis produktu]]>
  19. </opis>
  20. <cena>
  21. 100.00
  22. </cena>
  23. <url>
  24. <a href="http://domena.pl/adres-url-do-produktu.html" target="_blank">http://domena.pl/adres-url-do-produktu.html</a>
  25. </url>
  26. <zdjecie>
  27. <a href="http://domena.pl/zdjecia/1/nazwa_zdjecia.jpg" target="_blank">http://domena.pl/zdjecia/1/nazwa_zdjecia.jpg</a>
  28. </zdjecie>
  29. </produkt>


2, Potrafię za pomocą simplexml_load_file wygenerować listę wszystkich produktów, ze zdjęciami, opisami, itd.

  1. <?php
  2. $produkty = simplexml_load_file('plik.xml');
  3.  
  4. echo '<div>';
  5. foreach ($produkty->produkt as $produkt) {
  6. echo '<div>';
  7. echo '<div>';
  8. echo '<img src="'.$produkt->zdjecie.'">';
  9. echo '</div>';
  10.  
  11. echo '<div>';
  12. echo '<a href="'.$produkt->url.'">'.$produkt->nazwa.'</a>';
  13. echo '</div>';
  14.  
  15. echo '</div>';
  16. }
  17. echo '</div>';
  18.  
  19. ?>


... i to wszystko działa ok ale generowanie listy wszystkich produktów przy każdym wejściu usera jak się domyślacie jest zasobożerne.


Co chciałbym zrobić:
- Generować raz dziennie aktualne pliki html (wg szablonu), w menu byłyby nazwy kategorii i po kliknięciu wyświetlałoby listę produktów z danej kategorii
- Zdjęcia musiałyby znajdować się na docelowym hostingu, czyli jakimś wget (chyba) pobierać je z domena.pl/zdjecia


Mam nadzieje, że jest to w miarę zrozumiałe. Jeśli macie jakieś pytania to piszcie, odpowiem.


Pozdrawiam,
Odin
AuronDiel
1.Generować plik html można przez funkcje fopen a przez fwrite wpisywać zawarość zmienej w ktorej masz szablon html.
Pobaw się z data i funkcjami logicznymi. Niech skrypt pobiera godzine i sprawdza czy jest wieksze badz rowne 23:50.
Jesli jest, to za pomoca instrukcji if utworz plik html.
  1. $fp = fopen("$_SESSION[temat].html", "w");
  2. echo'Plik został utworzony.';
  3. $dane_pierwotne = 'szablon html';
  4. fwrite($fp, $dane_pierwotne);


2.Kiedys czytalem o bibliotece galerii polaczonej z ftp. Mysle ze warto sie tym zainteresowac.
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.