Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]Nadanie nowej nazwy dla obrazka? Jak?, Jak stworzyć nową nazwę obrazka?
palixmp
post
Post #1





Grupa: Zarejestrowani
Postów: 69
Pomógł: 0
Dołączył: 19.07.2006

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


Chciałbym, prosić o radę. Pisze serwis, gdzie każdy użyt może dodawać albumy ze zdjęciami i się zastanawiam, jak rozwiązać sprawę z nadawaniem nazw fotką przesłanym przez formularz. Mam coś takiego:
  1. <?php
  2. $nowa_nazwa=md5(rand()+rand()+rand()+1000*20*rand()).".".$ro; // wylosowanie nowej nazwy dla pliku i dodanie rozszerzenia
  3. ?>

Dodane zdjęcie jest w postaci : ffc9e94c4bb2e20d97c683719300084b.jpg i się tak zastanawiam czy jeśli będę miał np 1milion użytkowników i każdy z nich doda po 100fotek, czy jest możliwość że nazwy się powtórzą(IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif) Czy w tym jest taki mechanizm, że np te ciagi znaków się powtarzają co jakis okres?

Czy może lepiej to zrobić po prostu rosnąco? Wyciągać ostatni numer zdjęcia z bazy i dodawać do tego 1? Ale czy to jest poprawne?

Jakie jest najlepsze rozwiązanie Waszym zdaniem?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 3)
Crozin
post
Post #2





Grupa: Zarejestrowani
Postów: 6 476
Pomógł: 1306
Dołączył: 6.08.2006
Skąd: Kraków

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


Do generowania unikalnej nazwy lepiej skorzystać z uniqid(). I tak, w teorii istnieje szansa, że będzie już istaniło takie zdjęcie. Dlatego możesz się upewnić, że tak nie jest:
  1. <?php
  2.  
  3. $ro = 'png';
  4.  
  5. do{
  6.  $nowa_nazwa = md5(uniqid(mt_rand(), true)) . $ro;
  7. }while(file_exists($nowa_nazwa));
  8. ?>
Teraz masz pewność, że nazwa jest unikalna.
Go to the top of the page
+Quote Post
pyro
post
Post #3





Grupa: Zarejestrowani
Postów: 2 148
Pomógł: 230
Dołączył: 26.03.2008

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


mała poprawka
  1. <?php
  2. $ro = 'png';
  3.  
  4. do{
  5.  $nowa_nazwa = md5(uniqid(mt_rand(), true)) . '.'.$ro;
  6. }while(file_exists($nowa_nazwa));
  7. ?>
Go to the top of the page
+Quote Post
sowiq
post
Post #4





Grupa: Zarejestrowani
Postów: 1 890
Pomógł: 339
Dołączył: 14.12.2006
Skąd: Warszawa

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


Cytat(palixmp @ 13.05.2009, 22:32:17 ) *
jeśli będę miał np 1milion użytkowników i każdy z nich doda po 100fotek
Chcesz trzymać 100 mln fotek w jednym katalogu? (IMG:http://forum.php.pl/style_emoticons/default/biggrin.gif)
Go to the top of the page
+Quote Post

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: 23.08.2025 - 19:22