1.aby skrypt sprawdzał ,czy jest nowy plik .zip, musisz:
- albo fizycznie go uruchamiać, kiedy potrzebujesz
- albo wrzucić do cron-a, żeby robił to za Ciebie, kiedy chcesz
2. Taki skrypt musi robic po kolei:
a) pobrać z określonego adresu plik .zip (np curl-em) i zapisać go sobie lokalnie na dysku

rozpakować (php ma wsparcie wbudowane dla zip-a, więc nie ma problemu)
c) rozpakowany plik przepuszczasz przez petelke, która odsieje Ci potrzebne dane do zapytania SQL, np:
XML ma format:
<oferta>
<adres>tu adres</adres>
<cena>tu cena</cena>
</oferta>
...itd
Wyciągasz sobie te dane (np SimpleXML-em - wbudowane w php) i zapisujesz do zmiennych (np $adres i $cena)
potem kleisz sobie zapytanie: INSERT INTO baza (oferta_id,adres,cena) VALUES('',$oferta,$cena);