javascript crypted mail

croqued-monsieur

Grünschnabel
Folgendes Problem:

Ich möchte die Ausgabe der Email Adressen aus der Datenbank direkt mit dem Script von der seite http://jumk.de/nospam/ verschlüsseln, um so Spam zu verhindern. Das PHP Script sieht folgendermassen aus:

Code:
.......echo "  <div>\n";
    if(trim($row['Email']) == ""){
      echo $row['Name'];
    } else {
      echo "<a href=\"mailto:".$row['Email']."\">".$row['Name']."</a>\n";
    }
    if(trim($row['Homepage']) != ""){
      if(strtolower(substr($row['Homepage.......

Meine Frage ist also konkret, wie ich dieses Script einsetzen muss. Vorallem weiss ich nicht welches script ich konkret benutzen muss, da es im quelltext noch ein weiteres hat. Hoff kann mir da jemand den ein oder andere Tipp geben. Vielen Dank.

mfg croque
 
Zuletzt bearbeitet:
PHP:
<?php

function CryptMailto($addi,$crypt)
    {
        
      if(!$crypt)
        {
          $addi=str_replace('@',' [at] ',$addi);
          $addi=str_replace('.',' [dot] ',$addi);
          return $addi;
        }
       $r='';
       $addi='mailto:'.$addi;
       for( $i=0; $i < strlen($addi); ++$i)
        {
            $n = ord($addi[$i]);
            if( $n >= 8364 )
            {
                $n = 128;
            }
            $r .= chr($n+1);
        }
        
        return $r;
    }

?>
Das "verschlüsselt" dir in PHP die Mailadresse $addi
Der Parameter $crypt bestimmt, ob die Adresse verschlüsselt werden soll.
Ist er TRUE, wird sie verschlüsselt, so wie du es beim Aufruf von linkTo_UnCryptMailto() brauchst...ist er FALSE bekommst du die die sichtbare Ausgabe mit dem [at] und[dot].

Einsetzten musst du das Skript, was dort auf der Seite zu sehen ist....du brauchst die Funktionen linkTo_UnCryptMailto() und UnCryptMailto() (mit der letzteren ist nicht meine genannt..meine brauchst du nur in PHP)
 
ich will mich ja nicht extra blöd stellen. Aber hab da paar anlauf Schwierigkeiten.

also ich habe jetzt deine php CryptMailto Funktion in mein functions.php gespeichert und das include ich dann im file wo die Mail adressen ausgegeben werden. ich find jetzt einfach den zusammenhang nicht ganz. wie ich das realisieren kann.

das heisst ich brauch dieses script noch dazu ->

Code:
    <script type="text/javascript"> <!--
    function UnCryptMailto( s )
    {
        var n = 0;
        var r = "";
        for( var i = 0; i < s.length; i++)
        {
            n = s.charCodeAt( i );
            if( n >= 8364 )
            {
                n = 128;
            }
            r += String.fromCharCode( n - 1 );
        }
        return r;
    }

    function linkTo_UnCryptMailto( s )
    {
        location.href=UnCryptMailto( s );
    }
    // --> </script>

oder nur dein PHP Script? Danke für die Hilfe.
 
ca. so:
PHP:
<a href="javascript:linkTo_UnCryptMailto('<?php echo CryptMailto($row['Email'],1)?>');">Mail an <?php echo $row['Name'];?> schreiben</a>
Das ist der Link...
habs jetzt allerdings nicht getestet...wirst ja sehen, obs hinhaut :-)

Das Javascript brauchst du auch noch in der Seite.
 
super... schon ein stückchen weiter.

im moment sieht's so aus.

Code:
{
      echo "<a href=\"javascript:linkTo_UnCryptMailto('".CryptMailto($row['Email'],1)."\">".$row['Name']."</a>\n";
    }

so sollte es ja funktionieren, liegt es evtl. jetzt noch an der php funktion? da jetzt $row noch dazwischen liegt?

das hier wär noch die fehlermeldung...

Fatal error: Call to undefined function: cryptmailto() in /home/appenze/public_html/gb/gb.php on line 78
 
Zuletzt bearbeitet:
Vielen Dank hat geklappt.

Jetzt muss ich nur noch captcha einbauen, hab aber gesehen, das da schon einiges besprochen wurde auf'm board. werd mich mal umgucken.

:)
 

Neue Beiträge

Zurück