BartTheDevil89
Devilution Media
- 2 Mai 2006
- 3.960
- 103
Hallo,
ich habe folgende Funktion mir erstellt:
Also Ziel ist es eben, dass er erst die Worte aus der Datenbank ausliest und dann im Text überprüft, ob das Wort vorkommt. Wenn es vorkommt, dann soll er es erstetzen mit dem Wort und einem Link darum.....das funktioniert ja auch alles, allerdings:
Wenn ich das Wort "auto" habe, dann ersetzt er es mir in nem normalen Text auch richtig. Aber wenn ich www.auto.de in einem Text stehen habe, dann ersetzt er mir auto auch....also in der URL ersetzt er es mir auch!
Gibt es irgendwie eine Variante um zu verhindern, dass er es mir in URLs auch ersetzt? Denn das Wort autohaus ersetzt er mir das auto auch nicht, also er scheint nur Probleme mit dem Sonderzeichen davor zu haben.
ich habe folgende Funktion mir erstellt:
PHP:
function change($str) {
$result = $db->query("SELECT bid,wort FROM table");
while($daten = mysql_fetch_array($result)) {
$str = preg_replace('~(^|\W)('.$daten['wort'].')($|\W)~i','\\1<a href="#" onclick=\'window.open("datei.php?bid='.$daten['bid'].'", "moo", "toolbar=no,scrollbars=yes,resizable=yes,width=700,height=250");\'"><img src="images/grafik.gif" border="0">\\2</a>\\3',$str);
}
return $str;
}
Also Ziel ist es eben, dass er erst die Worte aus der Datenbank ausliest und dann im Text überprüft, ob das Wort vorkommt. Wenn es vorkommt, dann soll er es erstetzen mit dem Wort und einem Link darum.....das funktioniert ja auch alles, allerdings:
Wenn ich das Wort "auto" habe, dann ersetzt er es mir in nem normalen Text auch richtig. Aber wenn ich www.auto.de in einem Text stehen habe, dann ersetzt er mir auto auch....also in der URL ersetzt er es mir auch!
Gibt es irgendwie eine Variante um zu verhindern, dass er es mir in URLs auch ersetzt? Denn das Wort autohaus ersetzt er mir das auto auch nicht, also er scheint nur Probleme mit dem Sonderzeichen davor zu haben.
