Dostało mi się "w spadku" zadanie (w sumie tylko dokończenie). Muszę stworzyć skrypt który będzie pobierał z różnych serwerów pliki XML, a następnie zapisywał je na swoim "domowym" serwerze. Udało mi się napisać taki skrypt który pobiera z różnych wcześniej zdefiniowanych miejsc pliki XML, pobiera je i zapisuje u siebie. Kolejnym krokiem jest zapis do bazy (MySQL). Skrypt ogólnie dział, ale czaasami mu się zdarzy nawalić (najczęściej kiedy pliki XML mają jakieś błędy).
Kod mojego skryptu wygląda tak:
<? include"funkcje.php"; function pobierz_xml($co, $filename){ $filename2=$filename.".tmp"; if ($result) { $data = str_replace(">http://www.proomo.pl/grafika/produkty/bc1400v&m.jpg<", "><![CDATA[http://www.proomo.pl/grafika/produkty/bc1400v&m.jpg]]><", $data); // proomo.eu if ($data==chr(13).chr(10)) $data=""; //proomo.eu //$data = str_replace("\"", """, $data); //$data = str_replace(" < ", " ", $data); //$data = str_replace(" > ", "", $data); $data=ascii_only($data); if ($data6zn!="<pasaz" && $data6zn!="<loadO" && $data6zn!="</pasa" && $data6zn!="</load") } return true; } else { return false; } } $poczatek = $czas[1] + $czas[0]; $lockfile="/var/www/sc/tmp/aktualizacja_lockfile.tmp"; if ($diff>43200) { echo "<B>Błąd: DZIAŁANIE SKRYPTU NA INNEJ KONSOLI ZOSTAŁO PRZERWANE!</B><br>Było to możliwe, ponieważ skrypt został uruchomiony ponad 12 godz. temu....<br><br>"; } } echo "<b>Błąd: SKRYPT OD ".$diff." SEKUND PRACUJE NA INNEJ KONSOLI! </b><br>Spróbuj ponownie za kilka minut!!! <br><br>"; die; } if ($fp_lock) { }else{ die; } $id = (int)$_GET["id"]; include"config.php"; if ($kkkkkkk=="") { if ($id) $result_sklep=mysql_query("SELECT id, nazwa, login, xml_url, xml_typ FROM t_sklep WHERE id = '$id' AND dostepny='1'", $db); else $result_sklep=mysql_query("SELECT id, nazwa, login, xml_url, xml_typ FROM t_sklep WHERE dostepny='1'", $db); $sklep_id=$row_sklep['id']; $sklep_nazwa=$row_sklep['nazwa']; $sklep_login=$row_sklep['login']; $sklep_xmlurl=$row_sklep['xml_url']; $sklep_xmltyp=$row_sklep['xml_typ']; $dir="/var/www/p/s/data/".$sklep_login."/"; } $filename=$dir."update.xml"; pobierz_xml($sklep_xmlurl, $filename); }else{ } $koniec = $czas[1] + $czas[0]; } }else{ } ?> </body></html>
plik funkcje.php znajduje się pod tym adresem: http://scanerwww.pl/funkcje.txt
a skrypt zapisujący plik XML do bazy danych tutaj: http://scanerwww.pl/2.txt
wygenerowany plik XML: www.scanerwww.pl/update.xml
działanie skryptu wgrywającego można zobaczyć tutaj: http://scanerwww.pl/2.php
jak widać po błędach (skrypt 2.php) jest problem z plikiem XML :/
w firefoxie w źródle strony pokazuje mi się momentami różne dziwne rzeczy:(
i plik XML nie zapisuje mi się w bazie

Pomożecie mi z tym?? bo ja już nie wiem co z tym zrobić:(((
Z góry WIELKIE dzięki za pomoc
