Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MySQL][XML] Dane z FTP do MySQL
Frugo75
post
Post #1





Grupa: Zarejestrowani
Postów: 116
Pomógł: 0
Dołączył: 13.06.2013

Ostrzeżenie: (0%)
-----


Witam,

Zastanwiam sie nad rozwiązaniem i prosze o pomoc.

Mam pliki XML z depeszami agencyjnymi na FTP podzielone na rozne kategorie, np katalog 1 - w nim kategoria KRAJ, katalog 10 w nim xml z kategorii ŚWIAT itp.

I teraz co i jak powinienem zrobic, aby dane z FTP przenosiły się same (automatycznie, zaraz po pojawieniu się nowej depeszy w xml) do bazy mysql.

Ma ktos pomysł jak to zrobić? Proszę o wskazówki.

Pozdrawiam

Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Frugo75
post
Post #2





Grupa: Zarejestrowani
Postów: 116
Pomógł: 0
Dołączył: 13.06.2013

Ostrzeżenie: (0%)
-----


Dzięki. Wklejam kod

  1.  
  2. <?php
  3.  
  4.  
  5. $doc = new DOMDocument("1.0", "iso-8859-2");
  6. $doc->load("feeds.xml");
  7. $books = $doc->getElementsByTagName('feed');
  8. foreach ($books as $feed) {
  9. echo $feed->nodeValue, PHP_EOL;
  10. // echo $feed -> getAttribute('id').'<br>';
  11. $path = $feed -> getAttribute('path');
  12. // echo $feed -> getAttribute('cat_id').'<br>';
  13. //echo $path;
  14.  
  15.  
  16. //$path1
  17.  
  18. $path1 = substr($path, "1");
  19. $path1.'<br>';
  20.  
  21. $doc = new DOMDocument("1.0", "iso-8859-2");
  22.  
  23.  
  24. $doc->load("$path1");
  25.  
  26. $feed = $doc->getElementsByTagName( "feed" );
  27. foreach ($feed as $matches)
  28. {
  29. $title = $matches->getElementsByTagName( "title" );
  30. $tytul = $title->item(0)->nodeValue;
  31.  
  32. $content = $matches->getElementsByTagName( "content" );
  33. $tresc = $content->item(0)->nodeValue;
  34.  
  35. $id = $matches->getElementsByTagName( "id" );
  36. $export_id = $id->item(0)->nodeValue;
  37.  
  38. $add_date = $matches->getElementsByTagName( "add_date" );
  39. $date = $add_date->item(0)->nodeValue;
  40.  
  41.  
  42. $date;
  43.  
  44. // echo "$tytul";
  45. echo "<br>";
  46. echo "<br>";
  47. echo "<br>";
  48. "$tresc";
  49.  
  50.  
  51.  
  52. $tytul1 = addslashes($tytul);
  53. $tresc1 = addslashes($tresc);
  54. $date1 = addslashes($date);
  55.  
  56. mysql_connect("xxx","xxx","xxx") or die(mysql_error());
  57. mysql_query("SET NAMES utf8");
  58.  
  59. $tresc1;
  60. }
  61.  
  62. }
  63.  
  64. echo $tytul1;
  65.  
  66. function str2url( $str, $replace = "-" ){
  67.  
  68. // konwersja znaków utf do znaków podstawowych
  69. $str = iconv('UTF- 8', 'ASCII//TRANSLIT', $str);
  70.  
  71. // Niektóre francuskie i niemieckie litery pozostawiają po takiej konwersji (jak powyżej)
  72. // dodatkowe znaki. Poniższe dwie linijki te znaki wycinają
  73.  
  74. $charsArr = array( '^', "'", '"', '`', '~');
  75. $str = str_replace( $charsArr, '', $str );
  76.  
  77. $return = trim(ereg_replace(' +',' ',preg_replace('/[^a-zA-Z0-9\s]/','',strtolower($str))));
  78. return str_replace(' ', $replace, $return);
  79. }
  80.  
  81. $tylul1a=str2Url($tytul1);
  82.  
  83. echo $tylul1a;
  84.  
  85. mysql_query("INSERT INTO wp_posts (post_content, post_title, post_date, ID, post_name) VALUES ('".$tresc1."', '".$tytul1."', '".$date1."', '$export_id', '$tylul1a') ON DUPLICATE KEY UPDATE ID=VALUES(ID)") or die(mysql_error());
  86.  
  87. mysql_query("INSERT INTO wp_term_relationships (object_id, term_taxonomy_id) VALUES ('$export_id', '3') ON DUPLICATE KEY UPDATE term_taxonomy_id=VALUES(term_taxonomy_id)") or die(mysql_error());
  88.  
  89.  
  90.  
  91.  
  92. ?>
Go to the top of the page
+Quote Post

Posty w temacie
- Frugo75   [MySQL][XML] Dane z FTP do MySQL   14.01.2014, 13:37:49
- - mar1aczi   Cytat(Frugo75 @ 14.01.2014, 13:37:49 ...   14.01.2014, 13:40:18
- - Frugo75   Cytat(mar1aczi @ 14.01.2014, 14:40:18...   14.01.2014, 13:48:42
- - mar1aczi   Cron do uruchamiania skryptu. Skrypt: 1. sprawdza ...   14.01.2014, 14:06:02
- - Frugo75   Dziękuję. Teraz przynajmniej wiem od czego zaczac...   14.01.2014, 21:32:48
- - Turson   VALUES ('".$tresc."', ...   14.01.2014, 22:16:18
- - Frugo75   Cytat(Turson @ 14.01.2014, 22:16:18 )...   14.01.2014, 22:25:56
- - Turson   Błąd nie leży po stronie apostrofa a typowy błąd k...   14.01.2014, 22:29:39
- - Frugo75   Cytat(Turson @ 14.01.2014, 22:29:39 )...   15.01.2014, 19:57:22
- - mar1aczi   getElementsByTagName Pierwszy przykład na powyższe...   15.01.2014, 20:23:01
- - Frugo75   Cytat(mar1aczi @ 15.01.2014, 20:23:01...   15.01.2014, 20:35:31
|- - mar1aczi   Cytat(Frugo75 @ 15.01.2014, 20:35:31 ...   15.01.2014, 20:38:47
- - Frugo75   Witam ponownie. Sporo juz zrobilem. Newsy z ftp la...   18.01.2014, 10:25:07
- - mar1aczi   Funkcję str2url() wyjmij poza pętlę foreach. Spraw...   18.01.2014, 13:48:59
- - Frugo75   Dzięki, ale nie działa. Przenioslem wszystkie nawi...   18.01.2014, 14:20:35
- - mar1aczi   Pokaż kod po naniesionych poprawkach.   18.01.2014, 19:36:46
- - Frugo75   Dzięki. Wklejam kod [PHP] pobierz, plaintext ...   18.01.2014, 20:08:04
- - mar1aczi   Nie obraź się, ale powinieneś zapoznać się z zasad...   18.01.2014, 23:47:52
- - Frugo75   Dziękuje. Nie obrazam sie, bo mam swiadomosc, ze j...   19.01.2014, 10:24:27


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 9.10.2025 - 10:04