Sascha: ereg_replace() // Ausdruck ist nicht korrekt.

Hallo Forum,

Ich bekomme folgende Fehlermeldung:

Warning: Der vorherige reguläre Ausdruck ist nicht korrekt. in XXXXXXXX/displaySearch.php on line 33

Warning: Der vorherige reguläre Ausdruck ist nicht korrekt. in XXXXXXXX/displaySearch.php on line 34

Hier mein Quellcode:
<schnipp>

if($HTTP_POST_VARS["hostname"]!=""){
        $hostname = $HTTP_POST_VARS["hostname"];
        $hostname = ereg_replace("?","_",$hostname);  //Zeile 33
        $hostname = ereg_replace("*","%",$hostname);  //Zeile 34
        $min = 0;
        $max = $intervall;
}

</schnipp>

Was soll jetzt verkehrt sein?

Danke und viele Grüße

Sascha

  1. Hallo Sascha,

    $hostname = ereg_replace("?","_",$hostname);  //Zeile 33
            $hostname = ereg_replace("*","%",$hostname);  //Zeile 34

    Das Fragezeichen ist, genau wie der Asterix, ein spezielles
    Zeichen in Regexen. Am besten verwendest du fuer so einfache
    Aufgaben aber eh <php.net/str_replace>.

    Was soll jetzt verkehrt sein?

    Die fehlende Maskierung von ? und *. Sagt dir ueberigens auch
    das Handbuch.

    Gruesse,
     CK

    --
    http://cforum.teamone.de/
    http://wishlist.tetekum.de/
    If God had meant for us to be in the Army, we would have been born with green, baggy skin.
    1. Hi,

      die einfachsten Sachen halt... ich hatte immer eines Maskiert (ohwehh ;-)

      Handbuch sagt es aber nicht unter ereg_replace()

      vielen dank für Deinen Hinweis

      viele Grüße

      Sascha