Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Suma kontrolna pliku
Forum PHP.pl > Forum > Przedszkole
Szunaj85
Próbuję napisać skrypt który za pomocą md5 sprawdzał by mi sumę kontrolną kilku plików, a następnie wyświetlał wynik każdego pliku w nowej lini. dry.gif Zarówno w internecie jak i na forach jest bardzo mało informacji na ten temat. Np.
  1. <?php
  2. $plik = fopen("plik.txt", "rb");
  3.  $tresc = fread($plik, filesize($plik));
  4.  echo md5($tresc);
  5.  fclose($plik);
  6. ?>
A ja za pozornie łatwym zadaniem coś nie mogę sobie dać rady. sadsmiley02.gif
erix
Cytat
Zarówno w internecie jak i na forach jest bardzo mało informacji na ten temat. Np.

Bo wszystko jest w manualu.

Zajrzyj z łaski swojej do dokumentacji md5" title="Zobacz w manualu PHP" target="_manual i w pokrewnych masz pewną funkcję niezbędną w Twoim problemie.
Szunaj85
Cytat
...w pokrewnych masz pewną funkcję niezbędną w Twoim problemie.
Rozumiem, że chodzi o funkcję md5_file(). Tylko, że teraz mam problem żeby wrzucić ją do kodu. Tak czy inaczej zawsze wywala błąd. Najwyżej co... to wyświetli sumę kontrolną pierwszego pliku z tablicy.
  1. <?php
  2. $tab = array( 'plik1.php', 'plik2.php', 'plik3.php', 'plik4.php' );
  3. for ($i=0;$i<count($tab);$i++)
  4. echo $tab[$i].'<br>';
  5. ?>
Wicepsik
  1. <?php
  2. $tab = array( '1.txt', '2.txt', '3.txt' );
  3. for ($i=0;$i<count($tab);$i++)
  4. echo 'MD5 file hash of ' . $tab[$i] . ': ' . md5_file($tab[$i]);
  5. ?>


MD5 file hash of 1.txt: c4ca4238a0b923820dcc509a6f75849b
MD5 file hash of 2.txt: c81e728d9d4c2f636f067f89cc14862c
MD5 file hash of 3.txt: eccbc87e4b5ce2fe28308fd9f2a7baf3
Szunaj85
Wicepsik skrypt oczywiście działa, jednak dzisiaj próbowałem zrobić coś takiego, że zanim wyświetli sumę kontrolną danego pliku z tablicy sprawdzi czy plik w ogóle jest na serwerze i w przypadku braku jakiegoś pliku wyświetlał by inny komunikat. Coś w stylu else if. Przy normalnym warunku nie mam z tym problemu, jednak tutaj nie wiem jak to zrobić.
Komunista
No to sprawdzasz is_file'em, jak jest to pobierasz hash, jak nie to jedziesz dalej po pętli, ew. możesz nazwę pliku, którego nie ma zapisać do innej tablicy i po wykonaniu pętli wyswietlić, że tych plikow nie ma
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.