Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: unikalne identyfikatory
Forum PHP.pl > Forum > Przedszkole
kanan
Chialbym wygenerowac unikalne identyfikatory, dla obrazkow wgrywanych na strone. W jaki sposob mozna to zrobic, by istniala pewnosc, ze dwa na pewno sie nie powtorza.

I drugie pytanie, czy istnieje mozliwosc wyizolowania rozszerzenia z przeslanego pliku w tablicy $_FILES? Czy po prostu trzeba zrobic substringa na 4 ostatnie znaki?
pawel_k
mysle ze md5(nazwa+znacznik czasu) w zupelnosci wystarcz... a co do drugiej czesci to mozesz uzyc funkcji explode i rozbijac po kropce... substring na 4 ostatnie znaki nie zadziala na wszystkie rozszerzenia (np. .java .jpeg .mpeg)
maston
w zmiennej $_FILES[zmienna_pliku][type] jest zapisany typ pliku smile.gif
zombie
Cytat(pawel_k @ 2005-08-18 00:52:22)
mysle ze md5(nazwa+znacznik czasu) w zupelnosci wystarcz...

zawsze możesz się jeszcze upewnić przez file_exist" title="Zobacz w manualu php" target="_manual
scanner
Mozesz też użyć: md5_file()" title="Zobacz w manualu php" target="_manual lub sha1_file()" title="Zobacz w manualu php" target="_manual, które to podadzą Ci hash pliku a nie tylko nazwy.
hwao
  1. <?php
  2. function nazwa( $name, $dir = '.', $p = 0 ) {
  3.  $test = $name;
  4.  $i = 1;
  5.  while( file_exists( $dir.'/'.$test ) {
  6. $ex = explode( '.', $name );
  7. $ex[$p] .= '_'.$i;
  8. $i++;
  9. $test = join( '.', $ex );
  10.  }
  11.  return $test;
  12. }
  13. ?>

Powinno dzialac (pisane z glowy) ale zasada chyba jest przedstawiona ( i oto chodzilo)

ad2.
  1. <?php
  2. $ex = array_pop( explode( '.', $file ) );
  3. echo $ex;
  4. ?>
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.