String hochzählen

ultrauser

Mitglied
Hallo,

Ich habe eine große Impressumseite mit mehreren Emails und da will ich ein wenig geschützt sein, gegen spammer. Die Email werden aus einer MySql Datenbank ausgelesen. Jetzt will ich das die Email, also jeder Buchstabe (String) in PHP, um eine Stelle hochgezählt wird. Das soll denn auf der Seite ausgegeben werden und eine JavaScript Funktion soll das denn wieder EntCrypten. Hier ist die JS Funktion:

HTML:
function UnCryptMailto(s, shift) {
	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-(shift)); 
	}
	return r;
}
function linkTo_UnCryptMailto(s, shift)	{
	location.href=UnCryptMailto(s, shift);
}

Wie mache ich das in PHP? Oder hat jemand eine bessere Idee, wie ich das machen kann?
 
Du könntest z.b mit ord() und chr() arbeiten:
PHP:
            $mail="test@test.de"
            $array = array();
            for($i=0; $i<strlen($mail); $i++)
                   $array[$i] = $mail{$i};
            foreach($array as $key=>$buchstabe) {
                   $array[$key] = chr(ord($buchstabe)+1);
             }
             $cryptedMail = implode('', $array)
 
Zuletzt bearbeitet:
Benutze doch einfach ein Kontaktformular.

Dein Beispiel wäre übrigens noch zu vereinfachen, birnkammer:
PHP:
<?php

	$string = 'test@test.de';
	for( $i=0; $i<strlen($string); $i++ ) {
		$string{$i} = chr(ord($string{$i})+1);
	}

?>
 
ok, funktioniert. Danke Jungs. Mal eine andere Frage.

Ich will den Teil der Email Adresse, den man sieht als Image (PNG oder GIF) auf der Seite haben. Hierzu nehme ich dieses Script:

PHP:
<?php 
$img = imagecreate(50, 20);
$bg = imagecolorallocate($img,255,255,255);
$white = imagecolorallocate($img,0,0,0);
imagestring($img,1,1,12,$row_partner['fa_ma_email'],$white);
##Ausgabe
imagepng($img);
?>

Das Porblem ist, die Abfragen und Ausgaben sind im gleichen Dokument. Wie kann ich jetzt das Bild in der PHP Datei ausgeben?
 
Zuletzt bearbeitet:
@Gumbo:
Stimmt, hab ich aber auch nur schnell gemacht

@ultrauser
Mit einem Kontaktformular würd schon gehen. Du könntest per URL eine ID an ein Kontaktformular übergeben, welches dann die E-Mail z.B aus einer DB holt und in die Mail-Funktion des Kontaktformulars einsetzt
 
Was hast du gegen ein Kontaktformular einzuwenden? Ist es etwa die Mehrarbeit gegenüber einer teilweise unzugänglichen JavaScript-Lösung?
 
Zurück