php.de

Zurück   php.de > php.de Intern > Wiki Diskussionsforum > Tutorials

Tutorials Hier findest Du Tutorials, welche nach und nach ein fertiges Script ergeben. Sehen, lernen & verstehen!

Antwort
 
LinkBack (9) Themen-Optionen Thema bewerten
Alt 05.09.2007, 01:45  
Erfahrener Benutzer
 
Registriert seit: 21.05.2008
Beiträge: 9.937
Zergling-new wird schon bald berühmt werden
Standard JavaScript/HTML: Text (zB E-Mail-Adresse) verschlüsseln

Hallo,
ich habe ein kleines Skript geschrieben, das mir Text ver- und entschlüsselt.
Beispielsweise möchte ich nicht, dass meine Adresse im Impressum von Spidern oder Crawlern erfasst wird. Folgendes Skript kam dabei heraus:

Text.js
Code:
function Text()
{
}

Text.decryptDocument = function()
{
    var tags = document.getElementsByTagName("SPAN");
    for (var tag, i = 0, ix = tags.length; i < ix; ++i) {
        tag = tags[i];
        if (tag.className.match(/\bencrypted\b/)) {
            tag.innerHTML = Text.decrypt(tag.innerHTML);
            tag.className = tag.className.replace(/\bencrypted\b/, "");
        }
    }
    tags = document.getElementsByTagName("A");
    for (var email, i = 0, ix = tags.length; i < ix; ++i) {
        tag = tags[i];
        if (tag.className.match(/\bencrypted\b/)) {
            email = Text.decrypt(tag.innerHTML);
            tag.href = "mailto:" + email;
            tag.innerHTML = email;
            tag.className = tag.className.replace(/\bencrypted\b/, "");
        }
    }
}

Text.encrypt = function(plainText)
{
    var encryptedText = [];
    for (var i = plainText.length - 1; i >= 0; --i) {
        encryptedText.push(plainText.charCodeAt(i));
    }
    return encryptedText.join("-");
}

Text.decrypt = function(cryptText) 
{
    cryptText = cryptText.split("-");
    plainText = "";
    for (var i = cryptText.length - 1; i >= 0; --i) {
        plainText += String.fromCharCode(cryptText[i]);
    }
    return plainText;
}
Wird Text.decryptDocument() nach dem Laden (onload) gestartet, entschlüsselt es <span> und <a> Tags, bei letzterem wird ein mailto-Link erstellt.

Code:
<span class="encrypted">101-104-117-114-115-108-114-97-75-32-55-51-49-54-55</span>

<a class="encrypted">101-100-46-115-115-112-104-112-64-111-102-110-105</a>
Die statischen Methoden Text.encrypt() und Text.decrypt() erwarten als ersten und einzigen Parameter einen Klartext bzw. verschlüsselten Text und geben diesen verschlüsselt bzw. entschlüsselt zurück.

Die statische Methode Text.decryptDocument() hingegen durchforstet das Dokument und entschlüsselt automatisch.

Es macht Sinn, in einer Produktionsumgebung die Methode Text.encrypt() zu entfernen, da sie nur zum Erstellen der verschlüsselten Zeichenketten genutzt werden sollte.

Verschlüsseln ist übrigens auch ein etwas hochgegriffenes Wort, es wird lediglich der Unicode der Buchstaben verwendet, welche dann mit einem Bindestrich getrennt werden.

Vielleicht findet es ja bei dem ein oder anderen Verwendung.
Zergling-new ist offline   Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 07.09.2007, 18:18  
Erfahrener Benutzer
 
Benutzerbild von phpdummi
 
Registriert seit: 06.06.2008
Beiträge: 1.631
PHP-Kenntnisse:
Anfänger
phpdummi ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Kein schlechter Ansatz, allerdings verblüfft man damit User, die z.B. wegen Restriktionen im Firmennetzwerk kein JS nützen können/wollen.
Ich verwende bis jetzt Bilder. Im Quellcode steht z.B.:
Code:
Unsere Email-Adresse:
<div id="email">
  <a href="mailto:spam@company.org">
    [img]spam.gif[/img]
    Email
  </a>
</div>
[img]random.gif[/img]
Wobei "random" durch eine Zufallszahl ersetzt wird.
Ich kann nicht beurteilen inwiefern diese Variante paranoide Züge hat. Der Div Container wird per display:none versteckt.
Ich hoffe das ich damit den berüchtigten OCR Programmen entgehen kann ...
__________________
"Nobody is as smart as everybody" - Kevin Kelly
— The best things in life aren't things
phpdummi ist offline   Mit Zitat antworten
Antwort


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

LinkBacks (?)
LinkBack to this Thread: http://www.php.de/tutorials/44719-javascript-html-text-zb-e-mail-adresse-verschluesseln.html
Erstellt von For Type Datum
Warum eigentlich (at) und nicht @ - Flashforum This thread Refback 21.12.2009 17:43
Warum eigentlich (at) und nicht @ - Flashforum This thread Refback 26.08.2009 10:32
Metacrawler - Die Metasuchmaschine. This thread Refback 06.05.2009 14:52
Warum eigentlich (at) und nicht @ - Flashforum This thread Refback 05.01.2009 15:07
Warum eigentlich (at) und nicht @ - Flashforum This thread Refback 05.01.2009 14:52
Warum eigentlich (at) und nicht @ - Flashforum This thread Refback 05.01.2009 14:34
Warum eigentlich (at) und nicht @ - Flashforum This thread Refback 05.01.2009 14:34
Warum eigentlich (at) und nicht @ - Flashforum This thread Refback 05.01.2009 14:30
Warum eigentlich (at) und nicht @ - Flashforum This thread Refback 05.01.2009 14:24

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
JavaScript/PHP: qooxdoo 0.7.1 - Teil 1 : Eine Einführung Zergling-new Tutorials 6 25.01.2008 10:41
Automatische mail - Wie Umbruch & Variable in Text einba atoniusg PHP Tipps 2008 4 06.11.2007 21:56
Formular - Normaler Text im Mail? Toby PHP Tipps 2008 6 31.10.2007 13:32
CSS - Bild im div container überlappt andere container Buschdieb HTML, Usability und Barrierefreiheit 13 19.07.2007 23:17
CSS - Design (clear - Problem) HTML, Usability und Barrierefreiheit 7 21.12.2005 14:55
php mail() nur mit return adresse dsmcg PHP Tipps 2007 6 23.11.2005 11:24
Text aus der DB verteilen PHP Tipps 2007 17 16.11.2005 12:04
mail() erzeugt willkürlich Ausrufezeichen! im Text. Wieso?? 18inch PHP Tipps 2005-2 4 14.11.2005 17:56
[Erledigt] Link PHP Tipps 2005-2 10 20.07.2005 21:28
Mail wird bei GMX nur als Vollständiger Text angezeigt PHP Tipps 2005-2 16 17.07.2005 23:47
[Erledigt] durch Klick auf Text anderen Text einblenden HTML, Usability und Barrierefreiheit 3 03.07.2005 14:41
Mail adresse überprüfen? PHP Tipps 2005-2 6 16.06.2005 11:53
[Erledigt] DIV´s wollen nicht wie ich das will :-) HTML, Usability und Barrierefreiheit 22 28.03.2005 18:36
[Erledigt] Hi habe 3 Probleme mit mail und einen farblichen text. PHP Tipps 2005 1 06.01.2005 13:52
txt-Datei erstellen d-81 PHP Tipps 2004 12 11.08.2004 20:31

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
html verschlüsseln, javascript text verschlüsseln, html text verschlüsseln, javascript string verschlüsseln, php email verschlüsseln, php email adresse verschlüsseln, email verschlüsseln php, html email verschlüsseln, javascript verschlüsseln, email adresse verschlüsseln php, email adresse verschlüsseln javascript, javascript mailto encrypt, javascript email verschlüsseln, email html verschlüsseln, emailadresse verschlüsseln php, email verschlüsseln javascript, email adresse verschlüsseln, emailadresse verschlüsseln, email verschlüsseln html, javascript passwort verschlüsseln

Alle Zeitangaben in WEZ +2. Es ist jetzt 02:17 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.