- Ad -
php-resource



Zurück   PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr > Entwicklung > PHP Developer Forum
 

Login

 
eingeloggt bleiben
star Jetzt registrieren   star Passwort vergessen
 

 

 

 


PHP Developer Forum Hier habt ihr die Möglichkeit, eure Skriptprobleme mit anderen Anwendern zu diskutieren. Seid so fair und beantwortet auch Fragen von anderen Anwendern. Dieses Forum ist sowohl für ANFÄNGER als auch für PHP-Profis! Post your PHP questions here!

Antwort
 
LinkBack Themen-Optionen Thema bewerten
  #1 (permalink)  
Alt 26-03-2003, 12:08
fUnk`
 Newbie
Links : Onlinestatus : fUnk` ist offline
Registriert seit: Mar 2003
Beiträge: 2
fUnk` ist zur Zeit noch ein unbeschriebenes Blatt
Exclamation function in preg_replace() search array aufrufen

Hallo,

ich hab eine komplizierte Frage. Ich möchte in einem replaceargument array eine funktion benutzen um werte zu verschlüsseln.

so in etwa (sind normalerweise mehr suchwerte drin)

$search = array("'(^|\ |\\n)([a-zA-Z0-9\.\/\-\_]{1,})@([a-zA-Z0-9\.\/\-\_]{1,})'i");

$makeit = array("\\1<a href=\"mailto:".hex_encode("\\2@\\3")."\">\\2@\\3</a>");

$eingabe = "ist ein string, verschiedene texte einer HP die aus einer DB stammen.";

preg_replace($search, $makeit, $eingabe);


Ich habe halt vor in einem Text nach einer E-Mail Adresse zu suchen und diese in ein "mailto:mail@mail.de" Link zu verwandeln.
Das klappt auch alles. Nur will ich diesen link verschlüsselt im HTML Code darstellen - die Funktion geht auch.
Ich kann sogar die Funktion im array aufrufen nur interpretiert er natürlich nur die Zeichen als String und verschlüsselt einfach "\\2@\\3" !!!

Ich will aber natürlich die werte davon verschlüsseln. Hat einer 'ne Ahnung ob das überhaupt geht? Ich habs auf verschiedene arten versucht.
Help plz !!! :*(
Mit Zitat antworten
  #2 (permalink)  
Alt 26-03-2003, 12:12
MelloPie
 PHP Master
Links : Onlinestatus : MelloPie ist offline
Registriert seit: Jan 2002
Ort: Hessen
Beiträge: 4.380
MelloPie ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Mal ne kleine Frage:
Was bringt das verschlüsseln mit Deine hex_encode Funktion?
__________________
Beantworte nie Threads mit mehr als 15 followups...
Real programmers confuse Halloween and Christmas because OCT 31 = DEC 25
Mit Zitat antworten
  #3 (permalink)  
Alt 26-03-2003, 12:43
wahsaga
  Moderator
Links : Onlinestatus : wahsaga ist offline
Registriert seit: Sep 2001
Beiträge: 24.486
wahsaga befindet sich auf einem aufstrebenden Ast
Standard Re: function in preg_replace() search array aufrufen

Zitat:
Original geschrieben von fUnk`
Ich kann sogar die Funktion im array aufrufen nur interpretiert er natürlich nur die Zeichen als String und verschlüsselt einfach "\\2@\\3" !!!
funzt vllt.
$makeit = array("\\1<a href=\"mailto:".hex_encode(\\2@\\3)."\">\\2@\\3</a>");
?


btw: es nützt wohl relativ wenig, nur die emailadresse hinter mailto: zu kodieren, wenn im linktext immer noch der klartext steht...
__________________
I don't believe in rebirth. Actually, I never did in my whole lives.
Mit Zitat antworten
  #4 (permalink)  
Alt 26-03-2003, 12:49
fUnk`
 Newbie
Links : Onlinestatus : fUnk` ist offline
Registriert seit: Mar 2003
Beiträge: 2
fUnk` ist zur Zeit noch ein unbeschriebenes Blatt
Standard

function hex_encode ($email_address) {
$encoded = bin2hex("$email_address");
$encoded = chunk_split($encoded, 2, '%');
$encoded = '%' . substr($encoded, 0, strlen($encoded) - 1);
return $encoded;
}


soweit ich das mitbekommen habe durchsuchen die meisten spammbots den HTML Quellcode und wollte daher die email adresse verschlüsseln da dann dort kein string@string.domain zu finden ist sondern nur eine zahlenfolge. Der link auf der seite funzt aber.
Hat wer ne andere Lösung?
Mit Zitat antworten
  #5 (permalink)  
Alt 26-03-2003, 15:16
oPerILaZ
 Newbie
Links : Onlinestatus : oPerILaZ ist offline
Registriert seit: Sep 2001
Beiträge: 46
oPerILaZ ist zur Zeit noch ein unbeschriebenes Blatt
Standard

hey

du kannst mit einem weiteren modifier > e < ( fuer eval) bestimmen das eine funktion aufgerufen wird

bsp.
Code:
function foo( $foobar )
{
  return "<i>".$foobar."</i>";
}
$repl = '|\{i\}(.*)\{/i\}|e';
echo preg_replace( $repl, "foo('\\1')", '{i}ich bin ein kursiver text{/i}' );

mfg



// edit
eckige klammern durch geschweifte ersetzt (die vBulletin posse soll mal vb Code in code tag sperren ; )
__________________
...mind your brain
need a free bulletin board:
JBB - laufendes Board
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre 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


PHP News

MariaDB 5.5 veröffentlicht
MariaDB 5.5 veröffentlichtDie freie MySQL-Alternative MariaDB wurde in der stabilen Version 5.5.23 veröffentlicht und soll einige Verbesserungen gegenüber Oracles Communityversion von MySQL mitbringen.

16.04.2012 | Berni

Deutsche Yii Framework Community
Deutsche Yii Framework CommunitySeit dem 19.03.2012 gibt es für die Yii PHP Framework Community ein deutsches Zuhause.

20.03.2012 | dhcomputer

 

Aktuelle PHP Scripte

EM 2012 Tipp-Spiel ansehen EM 2012 Tipp-Spiel

Online Tipp-Spiel zur Fussball Europameisterschaft 2012, basierend auf php-Script mit hinterlegter mySql-Datenbank

27.05.2012 tippimnetz | Kategorie: PHP/ Spiele
Advanced Login ansehen Advanced Login

Login-System und Kundenverwaltung, die sich spielend leicht in bestehende Webseiten einbauen lässt und einen enormen Funktionsumfang bietet. Ihre eigene Webseite muss mit Advanced Login nicht umständlich an ein fertiges System angepasst werden.

25.05.2012 Madden | Kategorie: PHP/ Kundenverwaltung
BROM CMS/BelCal 3 ansehen BROM CMS/BelCal 3

Spezielles CMS für Betreiber von Ferienwohnungen. Komplette Seitenerstellung online, Verwaltung mehrerer Objekte, Reservierungssystem mit sofortigem Abgleich im Belegungskalender und vieles mehr bietet dieses Content Management System.

25.05.2012 belcal2 | Kategorie: PHP/ CMS
 Alle PHP Scripte anzeigen

Alle Zeitangaben in WEZ +2. Es ist jetzt 10:32 Uhr.