Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]Wykrycie braku danych w pliku
Szunaj85
post
Post #1





Grupa: Zarejestrowani
Postów: 392
Pomógł: 7
Dołączył: 11.05.2008

Ostrzeżenie: (0%)
-----


Mam skrypt, który za pomocą Crona co godzinę zapisuje mi pewne dane do pliku razem z aktualną datą i godziną.
Jednak zawsze coś może się zdarzyć i serwer może nie działać.
Na przykładzie widać, że brakuje zapisu z godziny 3 i 4.
Gdy serwer znów zacznie działać jak wykryć przy pomocy PHP brak tych zapisów i uzupełnić je razem z treścią "błąd" tak jak na drugim przykładzie?
Kod
09.07.2011, 00:00, treść
09.07.2011, 01:00, treść
09.07.2011, 02:00, treść
09.07.2011, 05:00, treść
09.07.2011, 06:00, treść
itd...

Kod
09.07.2011, 00:00, treść
09.07.2011, 01:00, treść
09.07.2011, 02:00, treść
09.07.2011, 03:00, błąd
09.07.2011, 04:00, błąd
09.07.2011, 05:00, treść
09.07.2011, 06:00, treść
itd...
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
thek
post
Post #2





Grupa: Moderatorzy
Postów: 4 362
Pomógł: 714
Dołączył: 12.02.2009
Skąd: Jak się położę tak leżę :D




Skrypt odpalany sobiesprawdza ostatnia linijkę i według niej decyduje co robić. Złapie, że ostatnia linijka wykonana wiecej niż godzinę temu to dopisze brakujące z errorem.
  1. $file = file( $nazwa_pliku );
  2. $last_line = end( $file );
  3. //tu sobie robisz co chcesz, sprawdzasz, kombinujesz, dodajesz braki
  4. $file[] = $nowa_linijka;
  5. file_put_contents( $nazwa_pliku, implode( PHP_EOL, $file ) );
Go to the top of the page
+Quote Post

Posty w temacie
- Szunaj85   [PHP]Wykrycie braku danych w pliku   9.07.2011, 12:11:05
- - Daiquiri   A nie możesz po prostu przy dodawaniu kolejnego re...   9.07.2011, 12:15:31
- - sadistic_son   Przecież kolega nie dodaje tego do bazy tylko do p...   9.07.2011, 12:27:10
|- - Fifi209   Cytat(sadistic_son @ 9.07.2011, 13:27...   9.07.2011, 14:01:41
- - Daiquiri   Rekord rozumiany jako wpis. Serio, czy to było nie...   9.07.2011, 12:31:16
- - toaspzoo   Jak kolega wyżej, explode zdziała cuda ;p   9.07.2011, 14:13:55
- - Szunaj85   CytatMoim zdaniem najprościej byłoby podzielić exp...   10.07.2011, 16:57:34
- - toaspzoo   $linia = explode("\n", $p...   10.07.2011, 17:00:43
- - Szunaj85   CytatNastępnie każdy z nich dzielisz względem prze...   11.07.2011, 11:40:59
- - thek   Skrypt odpalany sobiesprawdza ostatnia linijkę i w...   11.07.2011, 12:39:16
- - Szunaj85   Jeszcze jedno pytanie. Jak za pomocą warunku if sp...   11.07.2011, 13:41:03
- - Daiquiri   Nawet najgłupszym sposobem: jeżeli ($zmienna1...   11.07.2011, 13:47:42
|- - Fifi209   Cytat(Daiquiri @ 11.07.2011, 14:47:42...   11.07.2011, 13:57:43
- - Daiquiri   Nie podał szczegółów co do jednostek .   11.07.2011, 14:02:37
- - thek   Fifi... Nie bądźmy upierdliwi. Wystarczy, że porów...   11.07.2011, 14:13:26
|- - Fifi209   Cytat(thek @ 11.07.2011, 15:13:26 ) F...   12.07.2011, 10:54:43
- - Szunaj85   CytatNie podał szczegółów co do jednostek smile.gi...   12.07.2011, 09:30:12
- - Daiquiri   Fifi209, tworzysz problemy których nie ma. Uważam,...   12.07.2011, 13:33:41
- - Szunaj85   Pomoże mi ktoś z moim nie rozwiązanym problemem?   15.07.2011, 13:21:25


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 4.10.2025 - 17:41