![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 41 Pomógł: 0 Dołączył: 9.10.2006 Skąd: Brzozów Ostrzeżenie: (0%) ![]() ![]() |
Witam chciałem sobie zaimportować dane z pliku XML. Pojedynczy import dzila mi bez problemów pobieram wszytjoie dane z pliku do bazy. Jednak chce cos takiego zeby mi pobieralo tylko rekordy ktore wczesniej nie byly pobrane do bazy danych
Co sie dzieje z moim skryptem. Przechodzi mi przez caly plik XML i porownuje to z tym co jest zapisane w bazie dancyh. Jednak nie robi tego co chce bo nie zapisuje do bazy(wybrair te rekordy ktore juz mam zapisane) zmienilem warunek ($key->product_index != $index['product_index']) za kazdym razem tablica jest przeszukiwana od nowa i zapisuje mi wszytko jeszcze raz. Chce zapisac tylko dane ktore wczesniej nie byly zapisane. Czy wogole dobrze mysle czy moze trzeba to rozwiazac w inny sposob?? -------------------- |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 732 Pomógł: 80 Dołączył: 25.05.2005 Skąd: Szczecin Ostrzeżenie: (0%) ![]() ![]() |
Hmm, na mój gust powinieneś dodać INSERT za 30 linijkę, teraz skrypt pracuje tak, że przechodzi tylko raz przez pętle. Tzn, porównuje zapisywany produkt z pierwszym rekordem, są różne zapisuje do bazy i wychodzi, potem kolejny rekord i znów porównuje z pierwszym. Jakbyś usunął ten break i w ifie w 24 linijce wcisną, że jak są równe to $zmienna = false i na końcu sprawdzać czy $zmienna == true jeśli tak to wtedy wykonać insert, pamiętaj o ustawianiu domyślnie zmiennej na true.
działa coś takiego ? EDIT: break chyba może być ![]() EDIT2: krócej chyba nawet będzie jak się zrobi:
![]() Ten post edytował sniezny_wilk 25.12.2007, 20:32:57 -------------------- DevBlog - http://www.bartekrogus.pl
|
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 13.07.2025 - 01:32 |