![]() |
![]() |
![]() ![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 4 Pomógł: 0 Dołączył: 8.03.2011 Skąd: Lublin Ostrzeżenie: (0%) ![]() ![]() |
Witam!
To mój pierwszy post na forum zatem proszę o wyrozumiałość. Niedawno rozpocząłem naukę z php i mysql. Przygoda ma charakter hobbystyczny a nie zawodowy (IMG:style_emoticons/default/smile.gif) Po przeczytaniu paru poradników, oraz kilku tematów na forum dotarłem do ściany, której nie mogę przeskoczyć zapewne z braku wiedzy... Mam plik XML o następującej strukturze:
plik jest obszerny, jego ostatni węzeł to:
łącznie od 0..4414 i będzie rosło w przyszłości... Ten kod:
Poprawnie wyłuskuje dane z pliku xml czego efektem jest wyświetlenie następujących danych:
itd... aż do
i teraz moje pytanie: W jaki sposób te dane mogę umieścić w tabelach w bazie MySQL poprzez odpowiednie polecenia PHP? Problem polega również na tym, że nie zawsze we wszystkich węzłach występują jednakowe pola... np. nie wszędzie występuje [teamid], [url]. Dodatkowo, czy jest możliwe aby zdefiniować jakie pola z listy wewnętrznej
będą wstawiane do danej tabeli w bazie danych. Np. Chciałbym podzielić te dane do dwóch tabel: Pierwsza - zawierająca [cpid jako PrimaryKey][name][country][teamid] z możliwością robienia updatów jeżeli dojdą nowi user Druga - zawierająca [numer - jako primary key AI][date - wstawiana z automatu w momencie wpisu do wiersza][total_credit][cpid] z możliwością robienia codziennych nowych wpisów dla wszystkich user z bazy jako kolejnych wierszy czyli w efekcie np.: 1 2011-03-08 100 [cpid] 2 2011-03-09 200 [cpid] itd.. Codziennie będzie więc pobierany plik user.xml i będzie robiony update tabeli 1 i uzupełnienie tabeli 2. Być może rozwiązanie jest banalne dla osób siedzących w temacie ale ja jak na razie nie znalazłem odpowiedzi... Pewnie gotowego rozwiązania (kodu) nikt mi nie napisze (IMG:style_emoticons/default/baaasmiley.gif) ale może chociaż jakieś podpowiedzi? Tomek. |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 127 Pomógł: 15 Dołączył: 16.02.2008 Skąd: Sanok Ostrzeżenie: (0%) ![]() ![]() |
A jak to zrobić... puść sobie pętlę foreach po Twojej tablicy elementów i w każdej iteracji wyślij do bazy zapytanie INSERT z odpowiednimi danymi. Może nie w każdej iteracji (IMG:style_emoticons/default/wink.gif) Lepszy będzie multi insert
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 6.10.2025 - 09:12 |