2016-02-17 2 views
3

Здравствуйте, я хочу, чтобы убедиться, что все поля в массиве $ ключ, в котором первая буква M, но есть проблема, которая:preg_match Ошибка При Проверьте HTML много входов

Внимание: preg_match() ожидает параметр 2, чтобы быть строка, массив приведен в C: \ AppServ \ WWW \ regx1.php на линии 15

<?php 
    if (isset($_POST['zr'])){ 
     $pattern = "/^m/"; 
    $key = array($_POST['text'],$_POST['text1'],$_POST['text2'],$_POST['text3']); 
     if (preg_match($pattern,$key)) 

     echo 'is Mathcing M is First!'; 
    }else { 

     echo "M it's Not First!'"; 
    } 

    ?> 

    <form action="regx1.php" method="post"> 
    <input type="submit" name="zr" /> 
    <br /> 
    <hr /> 
    <input type="text" name="text" /><br /> 
    <input type="text" name="text1" /><br /> 
    <input type="text" name="text2" /><br /> 
    <input type="text" name="text3" /><br /> 
    </form> 

.

ответ

1
<?php 
if (isset($_POST['zr'])) 
{ 
    $pattern = "/^m/"; 
    $key = array($_POST['text'],$_POST['text1'],$_POST['text2'],$_POST['text3']); 

    foreach($key as $val) 
    {  
     if (preg_match($pattern,$val)) 
     { 
      echo 'is Mathcing M is First!'; 
     } 
     else 
     { 
      echo "M it's Not First!'"; 
     } 
} 

или

<?php 
if (isset($_POST['zr'])) 
{ 
     $pattern = "/^m/"; 
     $key = array($_POST['text'],$_POST['text1'],$_POST['text2'],$_POST['text3']); 

     $failed = false; 
     foreach($key as $val) 
     {  
      if (!preg_match($pattern,$val)) 
       $failed = true; 
      } 
     } 

    if ($failed) 
    { 
     echo "M it's Not First!'"; 
    } 
    else 
    { 
     echo 'is Mathcing M is First!'; 
    } 

     ?> 
+0

спасибо за вас это работает !! – Mostafa

Смежные вопросы