ASP Classic

Gravatare im Einsatz

Erzeugen eines globalen Avatars und Implementierung mit ASP

In Internet-Foren ist es schon seit Jahren Gang und Gebe, Forenbeiträge der Mitglieder mit einem kleinen Bildchen zu versehen, um den Beiträgen etwas mehr persönliche Identität zu verleihen. Diese Bilder nennt man Avatare. Sie sollen die virtuelle Identität des Besitzers wiederspiegeln und lockern zudem die manchmal sehr textlastigen Threads etwas auf.

Das Problem mit den Avataren ist nur, dass ein Internet-User in jedem Forum in das er posten möchte, ein Bild hinterlegen muss, um die Funktionalität zu nutzen. In vielen Fällen passiert das noch über einen Upload bei der Anmeldung am Forum. In der Blog-Szene kann man nun ebenfalls einen Hang zum Bebildern von Beitragskommentare beobachten. Nur gibt es in Blogs keinerlei Möglichkeit ein Bild auf den Server hochzuladen. Um Avatare trotzdem zu unterstützen, haben die User oftmals die Möglichkeit die URL des eigenen Avatars dem Kommentar mitzugeben. State-of-the-Art in Zeiten des "Web 2.0" ist das allerdings nicht, denn ist die eigene Blog-Roll, d.h. die Liste der täglich gelesenen Blogs, recht lang und kommentiert man gerne, zerrt die Eingabe der Avatar-URL mit der Zeit an den Nerven.

Ähnlich ging es wohl auch Tom Werner, Web-Designer aus Kalifornien. Er ersann die sog. Gravatare (Globally Recognized Avatar) und bietet einen entsprechenden Dienst auf www.gravatar.com an. Sein Ansatzpunkt ist die eMail-Adresse, die ohne Zweifel jeder Internet-User besitzt und die meist beim Kommentieren von Blogs angegeben werden kann. Auf gravatars.com kann man nun die eigene eMail-Adresse mit einem Bild verknüpfen, das man auf den Server hochlädt. Nach ein paar Stunden, in denen das Bild einem Rating bezüglich Jugendfreiheit et cetera unterzogen wird, kann man auf das Bild über eine standardisierte URL zugreifen.

Der Unterschied zum Verlinken des Bildes auf einem eigenen Server ist nun, dass die Gravatar-URL von Blog-Systemen anhand der von Tom Werner herausgegeben Spezifikation und der vom Benutzer angegebene eMail-Adresse automatisch berechnet werden kann und somit das Bild mit Angabe der eMail-Adresse in einem Blog-Kommentar automatisch angezeigt wird.

Um Spammern nicht Vorschub zu leisten, ist die eMail-Adresse in der Gravatar-URL mittles des MD5-Algorithmus verschlüsselt. MD5-Zeichenfolgen (sog. Hashes oder Streuwerte) sind sehr sicher, denn man kann daraus nicht den Originalwert rekonstruieren.

Der URL können neben der Gravatar-ID, also dem MD5-Hash-Wert der eMail-Adresse, noch weitere Parameter mitgegeben werden, die für die Implementierung einer Gravatar-Unterstützung in Blog- oder anderen Systemen wichtig sind:

Parameter Werte Beschreibung
rating G | PG | R | X Rating nach MPAA-Richtlinien
size Zahl Größe des anzuzeigenden Bildes in Pixel
default URL URL zu einem Standardbild, falls zu der angegebenen eMail-Adresse kein Gravatar gefunden werden konnte
border Farbcode z.B. #000000 für einen schwarzen Rand um das Bild

Eine gültige Gravatar-URL könnte demnach folgendes Aussehen haben, wenn man im Blog nur einwandfreie Bilder in der Größe 40x40 Pixel ohen Rand darstellen möchte (Zeile mehrmals umgebrochen):

Function GetGravatarURL(strEMail)

   strHash = GetMD5Hash(strEMail)

   strRetVal = "http://www.gravatar.com/avatar.php?gravatar_id=" & strHash
   strRetVal = strRetVal & "&size=40"
   strRetVal = strRetVal & "&rating=G"
   strRetVal = strRetVal & "&default=" & _
     Server.URLEncode("http://www.meinserver.de/bilder/unbekannt40.jpg")

End Function

Die Codierung der Default-URL ist empfehlenswert, um nicht Gefahr zu laufen durch unbeabsichtigt eingefügte Sonderzeichen einer ungültige URL mitzusenden.

Diese URL kann man nun bei der tabellarischen Darstellung der Kommentare zu einem Beitrag in das SRC-Attribut des IMG-Tags einfügen.

Beispiel für eine (zugegebenermaßen) sehr simple Kommentartabelle:

'... Daten aus der Datenbank über ein ADO-Recordset auslesen

<table width="300" border="1">
<%
   Do Until rs.EOF 
     strEMail = rs.Fields("EMail")
     strName = rs.Fields("Name")
     strComment = rs.Fields("Kommentar") 
%>
   <tr>
      <td height="20" width="100%" colspan="2"><%=strName%></td>
   </tr>
   <tr>
      <td width="40"><img src="<%=GetGravatarURL(strEMail)%>" /></td>
      <td width="260" valign="top"><%=strComment%></td>
   </tr>
<% Loop %>
</table>
kick it on dotnet-kicks.de AddThis 0 wikio-Stimme(n) Trackback-Url...

2 Kommentare bislang...

  • funzt!
    2
    mp : Donnerstag, 11. Dezember 2008 21:27
  • Gravatar Test.

    Alter Schwede, du hast mordsmäßig schwere Captchas.
    1
    Max : Freitag, 4. Juli 2008 12:55

Dein Kommentar hierzu...


Kommentar-Feed für diesen Beitrag
Gravatare werden unterstützt .:. eMail-Adressen werden nicht veröffentlicht
 

RSS-Feed

Die URL des Standard-Newsfeed von zerbit.de lautet:

http://www.zerbit.de/rssfeed.aspx

Login


 

 

Statistik



kürzlich kommentiert

Artikel 52

  • Datum: 12.12.2005
    Kategorie: ASP Classic
    Zugriffe: 1.712
    Kommentare: 2
    Trackbacks: 0

Letzte Beiträge

Kategorien

Buttons & More

Blog-Roll

Banner Piraten-Partei