Php, mysql, sonderzeichen −

Hallo liebe Leute,

ich habe ein kleines Problem,

In der Datenbank habe ich alle Sonderzeichen in HTML-Code umgewandelt. Also ein Minus „-“ in LOGISCHESUNDminus;.
Wenn der user jetzt suchen soll, soll er natürlich nicht LOGISCHESUNDminus; eingeben, sonder das Minus „-“.

Ich dachte mit der folgenden Funktion, könnte ich das Problem lösen, aber irgendwie funktioniert es nicht ganz oder ist
die Funktion richtig und mein Fehler liegt woanders ?

function zeichen_ersetzen2($text){
$umlaute = Array("/-/");
$replace = Array(„LOGISCHESUNDminus;“);
$neu = preg_replace($umlaute, $replace, $text);

$zeichen_ersetzen2 = $neu;
return $zeichen_ersetzen2;
}

Wie kann ich sehen ob mein SQL richtig ausgeführt wird, wenn ich mir die sqlquery anschaue, gucke ich mir den im Browser an und da würde
er mir das LOGISCHESUNDminus; sofort wieder in ein minus umwandeln.

Kann mir jemand helfen, falls ich mir klar ausgedrückt habe :smile: ??

Gruß Chris

ps.: LOGISCHESUND steht für das Zeichen über der 6 :wink:

Hi,

In der Datenbank habe ich alle Sonderzeichen in HTML-Code
umgewandelt.

das war ein Fehler. Kannst Du den zurück nehmen?

Gruß
Ingo

Dafür gibt’s die Funktionen mysql_realescape_string oder addslahes und deren contreparts. Änder das doch im Script da deine custom function in einigen spezialfällen nicht greift.