1

アプリにサインアップするときに誰かが選択したURLを取得してチェックするコードが少しあります。ただし、以下の制限を追加したいと思います。

  • 3文字以上である必要があります
  • 国会議事堂の手紙はありません
  • 「管理者、サポートなど...」という特定の言葉はありません

これが私がこれまでに持っているものです-しかしそれは今特別な手紙を探しているだけです:

elseif($action == "validate"){

    $option = $_GET["option"];

    $value = $_GET["value"];

    switch($option){

    case "URL":             

$sql = mysql_select_db($value,$connect);
if(preg_match ( "@[^A-Za-z0-9]+@i", $value ) > 0) { $valid = "FALSE";   continue; }

$sql == 1 ?  $valid = "FALSE" : $valid = "TRUE";

}
4

2 に答える 2

1
if(preg_match("@^[a-z0-9]{3,25}$@", $value ) && (!preg_match("@admin|support|anything else@",$value))) { 
    //Restrict the word length to 25 characters at max, 3 at least.
    //Do some stuff. The $value meets the requirements as set forth
 ...
}
于 2012-05-22T17:55:16.337 に答える
0
elseif($action == "validate"){

    $option = $_GET["option"];

    $value = $_GET["value"];

    switch($option){

    case "URL":             

    $sql = mysql_select_db($value,$connect);
    if(preg_match ( "@[^A-Za-z0-9]+@i", $value ) > 0) { $valid = "FALSE";   continue; }
    if(strlen($value) <= 3) { $valid = "FALSE";   continue; } //less than 3 char
    if(strstr($value, 'admin')) { $valid = "FALSE";   continue; }
      //.. the same for your other words

    $sql == 1 ?  $valid = "FALSE" : $valid = "TRUE";

}
于 2012-05-22T17:55:25.933 に答える