Autor Zpráva
mckay_
Profil *
Před chvílí jsem se programoval s funkcí, která vrací adresu pro Gravatar, a tak mě napadlo, jestli by třeba nepřišlo vhod jí hodit do zdejšího FAQ. Tak já počkám, jak se k tomu vyjádří ostatní a případně jí sem postnu.
nightfish
Profil
mckay:
Tak ji postni sem. Pokud to někomu připadne vhodné, do FAQ ji doplní.
mckay
Profil
<?php
 function getGravatar($received_email)
 {
 /*
  * @author [ASI DJPW]
  */  
   
   
  $gravatar_type = "";  // Specifikace jaký typ obsahu může gravatar obrázek na vaší stránce obsahovat 
                        // x - může obsahovat extrémní násilí a obrázky sexuálního charakteru
                        // r - může obsahovat méně extrémní násilí a nějaké ty nahé obrázky
                        // pg - nejčastěji používaný typ, může obsahovat opravdu decetní násilí, provokativní oblečení… 
                        // g - určeno pro zobrazení na veřejných a oficiálních webech

   $gravatar_email = md5(strtolower(trim($received_email))); // tady se vytváří hash emailu 
   
   $gravatar_size = ""; // Sem můžete vyplnit číslo mezi 1 a 512, určuje rozměry obrázku, který vám gravatar server vrátí
   
   $gravatar_defaultimg = "";   // Zde nastavíte, co se zobrazí, pokud uživatel nemá zaregistrovaný gravatar
                                // mm -  (mystery-man) Jednoduchá silueta postavy, nemění se podle hashe emailu
                                // identicon - geometrický vzorek, který se mění podle hashe emailu
                                // monsterid - vytváří rozdílné příšery s různými barvami a dalšími charakteristickými rysy.
                                // wavatar - vytvoří náhodné obličeje s rozdílným pozadím a obličejovými vychytávkami
                                // 404 - Nezobrazí nic
                                // Nevyplníte nic - Pokud nevyplníte do této proměnné nic, zobrazí se defaultní Gravatarovské Géčko (můžete vidět tady http://www.gravatar.com/avatar/00000000000000000000000000000000)
                                
                                
                                // Jak například můžou vypadat vygenerované obrázky z Gravataru můžete vidět tady http://dl.dropbox.com/u/9427999/web-documents/gravatar_defaultimages_2010.png
                      
   $gravatar_address = "http://www.gravatar.com/avatar/$gravatar_email?r=$gravatar_type&s=$gravatar_size&d=$gravatar_defaultimg"; //tady se vytváří samotná adresa, která bude navrácena funkcí                         

   return $gravatar_address;
}

// Příklad, jak to použít
$gravatar = getGravatar("dusekdan@gmail.coma");
echo "<img src='$gravatar' alt='Gravatar' />";
?>
Alphard
Profil
mckay:
Na fóru lze najít stopy, že již dlouho slibuji přepracování PHP FAQ.
Idea je taková, že bych tam vše nevkládal přímo, stránka je potom dlouhá kilometr a půl, ale některé věci jenom odkazoval. Tak trochu ve stylu Časté potíže, zajímavosti a poučné debaty (nekopíruji, odkazy jsem začal sbírat dřív, než to Chammurapi založil :-)).

Nevzpomínám si, že by se tady na gravatar někdo někdy ptal, ale v nějakých odkazech na hotová řešení by být mohl.

Tohle vlákno přesunu do PHP, není nutné, abychom FAQ jedné kategorie řešili takto globálně.
Kcko
Profil
mckay:
A co nějaké kešování? A nebylo by vhodnější typ gravataru, šírku atd ... určovat přes parametry funkce?

( http://latrine.dgx.cz/kesovani-avataru-z-gravatar-com )
mckay
Profil
Kcko:
A co nějaké kešování?
Nepřijde mi podstatné. Kdyby se jednalo o datově rozměrné obrázky tak jasně, proč ne? Ale takhle…
+ čím víc vychytávek navíc, tím hůře se to potom pochopí.

A nebylo by vhodnější typ gravataru, šírku atd … určovat přes parametry funkce?
Když si to nastavíš jednou v té funkci (nebo v mém případě a myslím, že i v případech mnoha dalších, metodě), už potom stačí jen zavolat s emailem. Kdybych to předával jako parametry ve své funkci, našel by se zase někdo kdo by se dotazoval, proč to nenastavím uvnitř metody :).
Kcko
Profil
mckay:
Nepřijde mi podstatné. Kdyby se jednalo o datově rozměrné obrázky tak jasně, proč ne? Ale takhle…

Nejde o velikost obrázku, ale odezvu serveru gravatars.com, která mnohdy nebývá nejrychlejší, o tom také psal dgx

Když si to nastavíš jednou v té funkci (nebo v mém případě a myslím, že i v případech mnoha dalších, metodě), už potom stačí jen zavolat s emailem. Kdybych to předával jako parametry ve své funkci, našel by se zase někdo kdo by se dotazoval, proč to nenastavím uvnitř metody :).


Ty můžes nastavit i defaultní parametry , takže není nutné je vyplňovat neustále znovu.
Tvoje funkce je pro začátečníky bezesporu přínosná, ale asi jen pro ně, já osobně na ní nevidím nic zvláštního.

Stačí se podívat na gravatars.com do examples a tam najdeš podobnou nebo komplexnější třídu.

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

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

0