Jose Ortega: Problem mit Variablen in ereg

Hallo!

Um ein Passwort zu prüfen, das über ein Formular eingegeben wurde, verwende ich folgende Anweisung: ereg("[1]{6,25}$",$password)

Jetzt möchte ich jedoch das Ganze als Funktion verwenden und die erlaubte Länge des Passwortes mit Variablen beim Funktionsaufruf übergeben:

function checkPw($password,$min,$max){
if (ereg("[2]{$min,$max}$",$password))  {
return true;
}else{
return false;
}
}

checkPw('Passwort',6,25);

Kann mir jemand sagen, warum das so nicht funktioniert? Ich erhalte immer einen parse error: unexpected ',', expecting '}'. Gemeint ist der ',' zwischen $min und $max.

Gruß
Frodo


  1. _.@A-Za-z0-9 ↩︎

  2. _.@A-Za-z0-9 ↩︎

  1. function checkPw($password,$min,$max){
    if (ereg("[1]{$min,$max}$",$password))  {
    return true;
    }else{
    return false;
    }
    }

    es liegt an den $-Zeichen.
    Mach folgendes:
     function checkPw($password,$min,$max){
        $test='[2]{'.$min.','.$max.'}$';
        if (ereg($test,$password))  {
           return true;
        }else{
          return false;
        }
     }
    dies müsste funktionieren


    1. _.@A-Za-z0-9 ↩︎

    2. _.@A-Za-z0-9 ↩︎

    1. Auf das Nächstliegende bin ich anscheinend selbst nicht gekommen ;-)

      Vielen Dank und schönen Tag noch!