htmlentities in JavaScript

Diese JavaScript-Methode gibt einen String mit HTML-Entities zurück. Über das Objekt „oEntities“ können bei Bedarf weitere Entities ergänzt werden.

Code:

function htmlentities(sInput)
{
    var oEntities = {'&': '&amp;', '<': '&lt;', '>': '&gt;'};
    return sInput.replace(/[&<>]/g, function(sString){return oEntities[sString] || sString});
}

Einfache Alternierung mit PHP

Diese Funktion gibt abwechselnd entweder den einen oder den anderen Parameter zurück. Beispielsweise kann diese Funktion verwendet werden, um Tabellen abwechselnd einzufärben.

Code:

function alternate($sEven = "even", $sOdd = "odd")
{
    static $iCount;
    return ($iCount++ & 1) ? $sOdd :$sEven;
}

Einfache Alternierung mit PHP weiterlesen

Neue Snippet-Bibliothek Share-My-Snippets.de

Share-My-Snippets.de ist eine Snippet-Bibliothek um verschiedene Code-Snippets zu verwalten und mit anderen zu teilen.

Features:

  • Syntax-Highlighting für viele Sprachen
  • Private und öffentliche Snippets
  • Gruppieren von Snippets
  • Anlegen von Bookmarks
  • Kommentieren / Bewerten
  • Einfaches Teilen über Social-Networks
  • Vielen Dank an Jonas John, der mir unzählige Snippets zur Verfügung gestellt hat. Über Feedback und Verbesserungsvorschläge würde ich mich sehr freuen.

    Browser Fingerprinting mit JavaScript

    Diese JavaScript-Funktion erzeugt eine nahezu eindeutige Kennung von einem Webbrowser. Über fest im Browser eingestellte Parameter (z.B. Installierte Plugins, Auflösung, usw.) kann so ein Benutzer mit einer hohen Warscheinlichkeit eindeutig identifiziert werden. Das Ganze ist mit sehr geringem Programmieraufwand realisierbar.

    Code:

    <script src="http://code.jquery.com/jquery-latest.min.js" type="text/javascript"></script>
    <script src="https://raw.github.com/placemarker/jQuery-MD5/master/jquery.md5.js" type="text/javascript"></script>
    <script type="text/javascript">

    function getBrowserFingerprint()
    {
        var sFP = "";
        sFP+="Resolution:"+window.screen.availWidth+"x"+window.screen.availHeight+"\n";
        sFP+="ColorDepth:"+screen.colorDepth+"\n";
        sFP+="UserAgent:"+navigator.userAgent+"\n";    
        sFP+="Timezone:"+(new Date()).getTimezoneOffset()+"\n";
        sFP+="Language:"+(navigator.language || navigator.userLanguage)+"\n";
        document.cookie="sFP";
        if (typeof navigator.cookieEnabled != "undefined"
            && navigator.cookieEnabled == true
            && document.cookie.indexOf("sFP") != -1)
        sFP+="Cookies:true\n";
        else
        sFP+="Cookies:false\n"
        sFP+="Plugins:"+jQuery.map(navigator.plugins, function(oElement)
                                                      {
                                                        return "\n"+oElement.name+"-"+oElement.version;
                                                      });
        return $.md5(sFP);
    }

    alert(getBrowserFingerprint()); //d36fd202c2ab01a371c54b72b0e8e3c0

    </script>

    Verwendete Bibliotheken & Plugins:

    Demo: jsFiddle

    PHP: Verschiedene IP-Ranges umleiten

    Über die Methode redirectIpRanges können IP-Adressen aus verschiedenen Adressbereichen auf eine beliebige Zielseite umgeleitet werden. Der erste Parameter enthält die Adressbereiche, über den zweiten Parameter wird die Zielseite definiert.

    Code:

    $aMyIPRange[] = '127.0.0.3/127.0.0.3';
    $aMyIPRange[] = '127.0.0.0/127.0.0.10';

    redirectIpRanges($aMyIPRange, 'http://heise.de/');
                           
    function redirectIpRanges($aIPRange, $sDestination)
    {
        foreach((array) $aIPRange as $sRange)
        {
            $aIPRange = explode('/', $sRange);
            $iStart   = ip2long($aIPRange[0]);
            $iEnd     = ip2long($aIPRange[1]);
            $iIP      = ip2long($_SERVER['REMOTE_ADDR']);
           
            if ($iIP >= $iStart && $iIP <= $iEnd)
            header('Location: '.$sDestination);
        }
    }