Post
#1
|
|
|
Grupa: Zarejestrowani Postów: 26 Pomógł: 0 Dołączył: 3.06.2004 Skąd: Włocławek Ostrzeżenie: (0%)
|
Przy wykonywaniu skryptu instalacji galerii (wykonuje ona miniaturki obrazków oraz zapisuje informacje do bazy danych) otrzymałem następujący komunikat o błędzie:
Skrypt ten zdołał wykonać 38 miniaturek (a powinien w tym przypadku ok. 180) Kod pliku ze względu na wydajność zawiera następujące elementy: - zainclude'owany plik zawierający funkcję tworzącą miniaturki - pętlę przeszukującą dany folder ze zdjęciami i wykonującymi w/w funkcję oraz dodającą dane o kazdym obrazku do bazy danych Problem jest oczywisty. Chciałbym rozwiązać go poprzez modyfikację instalatora galerii aby działał w następujący sposób: Każdorazowe utworzenie miniaturki przerzuciłbym na osobny plik - czy serwer da się nabrać na to że zamiast jednorazowego wykonania wszystkich miniaturek wykonam pod rząd wiele wywołań tego samego skryptu? Jak to zrobić?(IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif) (IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif) (IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif) ? |
|
|
|
![]() |
Post
#2
|
|
|
Grupa: Zarejestrowani Postów: 1 033 Pomógł: 125 Dołączył: 17.09.2005 Skąd: Żywiec Ostrzeżenie: (0%)
|
Spróbuj też wrzucić do folderu w którym masz skrypt plik .htaccess o treści:
Kod php_value max_execution_time 120 Jeśli to nic nie da, to przerób skrypt tak: 1. Zapisuje aktualny czas do zmiennej $start (microtime" title="Zobacz w manualu PHP" target="_manual) 2. Przeszukuje folder, ładuje wszystkie zdjęcia do tablicy $pliki i sortuje ją alfabetycznie 3. Sprawdza czy istnieje zmienna $_GET['first'], jeśli tak, to przechodzi od razu do tego klucza tablicy (np. jeśli $_GET['first'] = 15 to pętlę zaczynasz od $i=15, nie $i=0) 4. Tworzysz pętlę for, która w każdym przejściu będzie robiła miniaturkę dla każdego zdjęcia, zapisuje dane do bazy i sprawdzała, czy minęło już 9 sekund (microtime() - $start) 5. Jeśli minęło już 9 sekund, to wysyłasz do przeglądarki nagłówek: Kod header( 'Location: http://strina.pl/plik.php?first=' . $i + 1 ); i kończysz wykonywanie skryptu. Ten post edytował Kicok 15.07.2007, 07:36:17 |
|
|
|
lichu10 Przekroczony maksymalny czas wykonywania skryptu 14.07.2007, 21:43:49
-=Peter=- set_time_limit() -> ustaw np na 120 sekund, pow... 14.07.2007, 22:07:36
lichu10 Niestety nie mogę tego zrobić. Skrypt wywala błąd:... 14.07.2007, 22:25:19
lichu10 Pierwsze rozwiązanie dało połowiczny efekt. Tzn ut... 15.07.2007, 08:33:25
pentel [PHP] pobierz, plaintext <?phpFatal error: Maxi... 15.07.2007, 12:43:17
lichu10 Szczerze mówiąc nie wczytałem się dokładnie Mój m... 16.07.2007, 10:31:38
Kicok Nie jest poprawny. Adres ma wyglądać tak:
http://s... 16.07.2007, 16:36:30
pentel Przyznam, że nigdy nie miałem problemu z... 16.07.2007, 18:43:48
lichu10 Szczerze mówiąc nie mam pojęcia o co chodzi z tym ... 16.07.2007, 22:27:21 ![]() ![]() |
|
Aktualny czas: 21.12.2025 - 02:27 |