Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php]RSS do bazy
Forum PHP.pl > Forum > PHP
robos85
Otóż mam za zadanie zrobić taki skrypt, który pobiera dane z RSS wklepuje je do bazy a następnie wyświetla dane z bazy.
Muszę też wyświetlać bezpośrednio z pliku xml - z tym już sobie poradziłem.
Poradźcie jak mam teraz pobrać dane do bazy - chyba najlepiej przez tablice zapisywać?
Mam taki kod na razie (prawa kolumna jest skopiowana z lewej):

  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml">  
  3.  <head>
  4.  <meta http-equiv="Content-Type" content="application/xhtml+xml; charset=utf-8" />
  5. <title>IMIE I NAZWISKO STUDENTA</title>
  6. <link href="styl.css" rel="stylesheet" type="text/css" />
  7.  </head>
  8.  <body>
  9.  <div style="width: 900px; margin: auto;">
  10. <div style="width: 900px;">
  11. <div id="menu">KANAŁY - po najechaniu się rozwija lista.</div>
  12. <div id="logo">LOGO szerokość 700</div>
  13. </div>
  14. <div style="width: 900px; margin: auto; clear: both; padding-top: 10px;">
  15. <div style="width: 45%; float: left; text-align: center;">ONLINE</div>
  16. <div style="width: 45%; float: right; text-align: center;">BAZA</div> 
  17.  
  18. <div style="width: 45%; font-size: 12px; float: left; border: solid; clear: left;">
  19. <div style="width: 85%; margin: auto;">
  20. <?php 
  21. $rss = simplexml_load_file('http://www.cert.pl/rss_feed.xml');
  22. $lacz= $rss->channel->item;
  23. foreach ( $lacz as $item )
  24. {
  25. print ("<a href=\"" . $item->link . "\" style=\"font-size: 14px;\">" . $item->title . "</a><br>" . $item->description . "<br><br>");
  26. }
  27. ?>
  28. </div>
  29. </div>
  30. <div style="width: 45%; font-size: 12px; float: right; border: solid; clear: right;">
  31. <div style="width: 85%; margin: auto;">
  32. <?php 
  33. $rss = simplexml_load_file('http://www.cert.pl/rss_feed.xml');
  34. $lacz= $rss->channel->item;
  35. foreach ( $lacz as $item )
  36. {
  37. print ("<a href=\"" . $item->link . "\" style=\"font-size: 14px;\">" . $item->title . "</a><br>" . $item->description . "<br><br>");
  38. }
  39. ?>
  40. </div>
  41. </div>
  42.  
  43. </div>
  44. </div>
  45. <div id="stopka">STOPKA</div>
  46.  
  47.  </body>
  48.  </html>
aiv
Dodaj do foreach() budowanie INSERT'a z wieloma rekordami:
  1. INSERT INTO `rss` (`id`,`link`, `title`, `description`) VALUES (NULL , '$item->link', '$item->title', '$item->description'), (NULL , '$item->link', '$item->title', '$item->description');


Np tak:
  1. <?php 
  2. $rss = simplexml_load_file('http://www.cert.pl/rss_feed.xml');
  3. $lacz= $rss->channel->item;
  4. foreach($lacz as $item) {
  5. $addArray[] = "(NULL , '$item->link', '$item->title', '$item->description')";
  6. print ("<a href=\"" . $item->link . "\" style=\"font-size: 14px;\">" . $item->title . "</a><br>" . $item->description . "<br><br>");
  7. }
  8. if (count($addArray) > 0) {
  9. $sql = "INSERT INTO `rss` (`id`,`link`, `title`, `description`) VALUES ";
  10. $sql .= implode(',' $addArray);
  11. mysql_query($sql);
  12. }
  13. ?>
robos85
mam teraz problem z polskimi znakami w bazie:/
mam poustawiane pola na utf8_unicode_ci i nie zapisuje mi PL znaków tylko krzaczki:/
kodowanie stronki mam utf8


Jak to naprawić?
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.