[php] skalowanie fotek

0

Dobra p[o 3 dniach meki nad zrobieniem skryptu do ladowania zdj na serwer potrzebuje costakiego:

  1. ktos do profilu laduje sobie zdjecie
  2. uzywam skryptu ktory laduje fote i zapisuje ja pod jakas nazwa
    losowa.np losuje zestaw literi liczba np: 03tr.jpg zeby sie nie powtorzyl plik
    bo wtedy jeden nadpisze ten stary co byl. a mozna zrobic
    kod co sprawdza nazwy plikow ? i jak sie powtrozy to wtedy losuje inna nzawe ?
  3. user wstawia fotke. np do 50 Kb nie wiem jakie dac rozmiary fotki i jaka wage
    do zdj w profilu. moze ktos mi podpowie ?
  4. i teraz jak to zeskalowac ? zeby dobrze sie wyswietlalo ?

p.s. czy ladowanie zdjec powinno wygladac tak:

laduje zdjecie z losowa nazwa na serwer np: 345a.jpg
potem do bazy zapisuje nazwe pliku w rekordzie o danym ID uzytkownika
i kidy uzytkownik wejdzie na profil to z bazy odzczytuje sie sciazka dostepu do tego pliku tak ?
dziekuje za ew pomoc. </ort>

0

nazwe pliku nie losuj tylko ustalaj sobie np kolejny nr foto001.jpg foto002.jpg ....
a skalowanie moze wykonac jesli masz na serwerze zainstalowana biblioteke GD
i wtedy cos takiego:

function skaluj($sciezka, $x){
  if ($sciezka<>"") {
   if(eregi(".jpg", $sciezka) || eregi(".jpeg", $sciezka))
     $zdj = imagecreatefromjpeg("$sciezka");
   if(eregi(".png", $sciezka))
     $zdj = imagecreatefrompng("$sciezka");
   if(eregi(".gif", $sciezka))
     $zdj = imagecreatefromgif("$sciezka");
   $zdjx = imagesx($zdj);
   $zdjy = imagesy($zdj);
   $y = ceil($zdjy*($x/$zdjx));
   $nowezdj = imagecreate($x,$y);
   imagecopyresized($nowezdj,$zdj,0,0,0,0,$x,$y,$zdjx,$zdjy);
   imagejpeg($nowezdj, $sciezka, 95);
  }
  return 0;
}
0

jak bede losowal nazwe z 8 znakow to i tak sie nie powtorzy a jak bede ustala foto1 foto2 to gdzie mam w bazie trzymac nuemrki i za kazdym dodaniem foto zrobic inkremenstacje ? jak wygodniej ? i bardziej profesjonalnie ?

0

ponury dziek iza kod :]

1 użytkowników online, w tym zalogowanych: 0, gości: 1