![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 5 Pomógł: 0 Dołączył: 10.12.2003 Skąd: zd-wola Ostrzeżenie: (0%) ![]() ![]() |
Witam. spotkałam się z problemem natury technicznej... mam 120 s na wykonanie operacji, muszę zaimportować ceny w pewnej hurtowni... koło 8000-10000 linijek pliku z importem cen. Wszystko już działa tylko po przejściu koło 2000-2500 linijek skrypt się wywala... i dostaję błąd przekroczenia czasu na wykonanie skryptu [max 120s]
Idzie to jakoś obejść? Ten post edytował skromna85 4.04.2007, 11:33:16 -------------------- Reklama w internecie || Potral tematyczny || Skromny Blog
|
|
|
![]() |
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 1 033 Pomógł: 125 Dołączył: 17.09.2005 Skąd: Żywiec Ostrzeżenie: (0%) ![]() ![]() |
1. set_time_limit" title="Zobacz w manualu PHP" target="_manual
albo 2. microtime" title="Zobacz w manualu PHP" target="_manual - za każdym przejściem pętli sprawdzasz jak długo wykonuje się już skrypt PHP. Jeśli dojdzie do 100 sekund to przy pomocy funkcji header() wywołujesz go ponownie, ale do adresu URL dodajesz zmienną określającą numer znaku, od której skrypt ma zacząć. Np jeśli w ciągu 100 sekund uda ci się przerobić 3456 linijek, to: - zatrzymujesz pętlę - odczytujesz pozycję kursora w pliku (ftell" title="Zobacz w manualu PHP" target="_manual) - wstawiasz ją do URL skryptu i wysyłasz nagłówek funkcją header" title="Zobacz w manualu PHP" target="_manual - na początku skryptu sprawdzasz, czy podano np. $_GET['zacznij_od'], jeśli tak to przesuwasz kursor w pliku do tego miejsca (fseek" title="Zobacz w manualu PHP" target="_manual) - kontynuujesz odczytywanie danych z pliku -------------------- "Sumienie mam czyste, bo nieużywane."
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 85 Pomógł: 0 Dołączył: 10.09.2005 Ostrzeżenie: (0%) ![]() ![]() |
Witam. spotkałam się z problemem natury technicznej... mam 120 s na wykonanie operacji, muszę zaimportować ceny w pewnej hurtowni... koło 8000-10000 linijek pliku z importem cen. Wszystko już działa tylko po przejściu koło 2000-2500 linijek skrypt się wywala... i dostaję błąd przekroczenia czasu na wykonanie skryptu [max 120s] Idzie to jakoś obejść? plik zapisany jest lokalnie czy zdalnie? może za długo przetwarzasz dane w pewnym miejscu...? |
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 191 Pomógł: 5 Dołączył: 13.01.2007 Ostrzeżenie: (0%) ![]() ![]() |
jest jeszcze jedno proste wyjście - można plik podzielić na kilka mniejszych i importować pojedynczo jeden za drugim
PS. witam znajomą ![]() -------------------- "Don't tell me you want a bridge - show me the canyon you want to cross" Giuseppe Delena
|
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 5 Pomógł: 0 Dołączył: 10.12.2003 Skąd: zd-wola Ostrzeżenie: (0%) ![]() ![]() |
Właśnie podział pliku odpada koleś chce zautomatyzować cały proces... pokombinuje z pierwszymi wskazówkami
![]() PS. witam kolegę z uczelni:) -------------------- Reklama w internecie || Potral tematyczny || Skromny Blog
|
|
|
![]()
Post
#6
|
|
![]() Grupa: Zarejestrowani Postów: 309 Pomógł: 0 Dołączył: 6.06.2006 Skąd: include('root/europe/ poland/szczecin.php'); Ostrzeżenie: (0%) ![]() ![]() |
to zrob upload, potem podziel plik na mniejsze i dopiero je importuj
![]() |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 5 Pomógł: 0 Dołączył: 10.12.2003 Skąd: zd-wola Ostrzeżenie: (0%) ![]() ![]() |
dobra udało sie chwilo przekonać klienta do dzielenia plików już podczas ich tworzenia
![]() -------------------- Reklama w internecie || Potral tematyczny || Skromny Blog
|
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 19.07.2025 - 04:23 |