wenn ich den PHP Schnipsel zum verschlüsseln der E-Mails in meinem Template nutze werde beim Aufruf der Webseite zwei Fehlermeldungen ins Logfile geschrieben. Entferne ich den Code bleibt das Error-Log clean
Hat vielleicht jemand von Euch einen Lösungsvorschlag?
(PHP 5.3.6, MySQL 5.08, REX 4.3.2)
PHP Snippet:
- Code: Alles auswählen
/* E-Mail Adressen verschlüsseln
***********************************/
if (!$REX['REDAXO']) rex_register_extension('OUTPUT_FILTER', 'rdx4908_encrypt_emails');
function rdx4908_encrypt_emails($params) {
return preg_replace_callback('/(mailto:)?([a-z0-9_-]+(\.[a-z0-9_-]+)*@([0-9a-z][0-9a-z-]*[0-9a-z]\.)+([a-z]{2,4}|museum))/im',rdx4908_encrypt_callback,$params['subject']);
}
function bla() {
}
function rdx4908_encrypt_callback($match) {
$encrypted_email_address = '';
for($i=0; $i < strlen($match[2]); $i++) {
$encrypted_email_address .= '&#'.ord(substr($match[2], $i, 1)).';';
}
if($match[1][0]) return $match[1] . $encrypted_email_address . '" class="email'; //hier ggfalls den Klassennamen ändern
else return $encrypted_email_address;
}
Log Einträge:
- Code: Alles auswählen
[Thu May 05 08:52:02 2011] [error] [client xxx.xxx.x.xxx] PHP Notice: Use of undefined constant rdx4908_encrypt_callback - assumed 'rdx4908_encrypt_callback' in /xxx/xxx/xxx/redaxo/include/classes/class.rex_article_base.inc.php(388) : eval()'d code(3) : eval()'d code on line 128
[Thu May 05 08:52:02 2011] [error] [client xxx.xxx.x.xxx] PHP Notice: Uninitialized string offset: 0 in /xxx/xxx/xxx/redaxo/include/classes/class.rex_article_base.inc.php(388) : eval()'d code(3) : eval()'d code on line 138
LG
Oliver

