Autor Zpráva
Izzi
Profil
Zdravim, chcem si spravit na stranke cely system nahravania avatarov, tu je ako taky nacrt toho co by som potreboval:

:: upload
:: limit maximalnej velkosti
:: vytvorenie mena obrazku *
:: ulozenie mena do dtb
:: ak prilis velky, nenahrat alebo zmensit pomocou php**

Chcem sa opytat na dve veci. (Tie s hviezdickami, ostatne viem.)

* Na to aby sa mi neopakovali a potom neprepisovali nazvy obrazkov potrebujem aby mal kazdy avatar iny nazov. Rozmyslal som, ze to spravim podla nicku uzivatela. Ale bol by tu problem, ak by uzivatel mal v mene diakritiku alebo medzeru,.. Potrebujem preto nejaky script na "vycistenie" mena, cize napriklad z "Peťo Malý" by spravilo "petomaly".. (existuje nieco taketo?)..
Druha moznost nad ktorou som rozmyslal, je ze by som generoval nahodne pismena a cisla napriklad takych desat. To pouzijem ak iny sposob nenajdem.
Ak mate vsak iny napad, tak sa podelte.

** Potrebujem php funkciu, ktorou by som zmensil v nejakom pomere vysku, sirku a aby to fungovalo na .gif, .jpg a .png obrazkoch.


Na nete som nenasiel navod na system avatarov, takze ak nejaky poznate, napiste link. Budem rad ak mi este poradite nejake ine osetrenia aby nedoslo k problemom. Dakujem.
Medvídek
Profil
Izzi
function novinka_url($nadpis) {
    $url = $nadpis;
    $url = preg_replace('~[^\\pL0-9_]+~u', '-', $url);
    $url = trim($url, "-");
    $url = iconv("utf-8", "us-ascii//TRANSLIT", $url);
    $url = strtolower($url);
    $url = preg_replace('~[^-a-z0-9_]+~', '', $url);
    return $url;
}

jinak pouzivam pro avatary format datum-cas-jmeno

2) toho je na natu hafo:)

$obrazek = GetImageSize($target_path);
      $sirka = $obrazek[0];
      $vyska = $obrazek[1];
      $typ = $obrazek[2]; 
          
      if ($sirka > 100) 
      {
        
        $thumb_sirka = 100;        
        $pomer = $sirka/100;
        $thumb_vyska = $vyska/$pomer;
        if($thumb_vyska>100){
        $pomer=$thumb_vyska/100;
        $thumb_vyska=100;
        $thumb_sirka=$thumb_sirka/$pomer;        
        }
        
      
      
      $thumb = imagecreatetruecolor($thumb_sirka, $thumb_vyska);
      if($typ==2)
      {
        $source = imagecreatefromjpeg($target_path);
        imageinterlace($thumb, 1);
        
        // ZMENIM VELIKSOT
        imagecopyresized($thumb, $source, 0, 0, 0, 0, $thumb_sirka, $thumb_vyska,
        $sirka, $vyska);
  
        // VÝSTUP
        imagejpeg($thumb, $target_path, 100);
      }
      if($typ==1)
      {
        $source = imagecreatefromgif($target_path);
        imageinterlace($thumb, 1);
        
        // ZMENIM VELIKSOT
        imagecopyresized($thumb, $source, 0, 0, 0, 0, $thumb_sirka, $thumb_vyska,
        $sirka, $vyska);
  
        // VÝSTUP
        imagegif($thumb, $target_path);
        
       
      
      }
      if($typ==3)
      {
        $source = imagecreatefrompng($target_path);
        imageinterlace($thumb, 1);
        
        // ZMENIM VELIKSOT
        imagecopyresized($thumb, $source, 0, 0, 0, 0, $thumb_sirka, $thumb_vyska,
        $sirka, $vyska);
  
        // VÝSTUP
        imagepng($thumb, $target_path);
      }
   }
   
   }
   
}

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: