如何进行php搜索,其中字符串可以是5或6个字符


How do i do a php search where the string can either be 5 or 6 characters?

我正在为美国建立一个邮政编码搜索&加拿大我的代码只适用于5个字符的美国邮政编码搜索。加拿大邮政编码为6个字符。我需要这个代码,所以如果用户只添加1-4个字符,如果它与数据库中的任何字符匹配,我不希望显示这些结果,因为它会显示数百个,而且它们都是错误的。

在我的代码中,我有:

   if (strlen($search_name)>=5)

我该如何设置它,使其同时使用5或6个字符?

所以,这是我正在使用的代码:

    <?php
if (isset($_POST['search_name'])) {
    $search_name = $_POST['search_name'];
    if (!empty($search_name)) {
        if (strlen($search_name)>=5) {
        $query = "SELECT * FROM `search4` WHERE `ZipCode` LIKE '%".mysql_real_escape_string($search_name)."%'";
        $query_run = mysql_query($query);

        if (mysql_num_rows($query_run)>=1) {
          echo "<table width=700' border='0'>"; 
          echo "<tr>";
          echo "<td width='700' valign='top'><table width='100%' border='0'>";
          echo "<tr>";
          echo "<td><p><strong>Results found:  </strong></p>";
          while ($query_row = mysql_fetch_assoc($query_run)) {{
              echo $query_row ['ZipCode'].', '; 
              echo $query_row['ZipCity'].', ';
              echo $query_row['ZipState'].'<br>';
              echo '<p><strong>Area: </strong></p>'; echo $query_row['Area'].'';
              echo "</td>";
              echo "</tr>";
              echo "<tr>"; 
              echo "<td>";
              echo '<span class="productdescription"><p>Mar Cor Office:   </p></span></h2>';
              echo $query_row['MCPOffice'].', ';
              echo $query_row['CustClassID'].'<br>';
              echo $query_row['Address1'].'<br>';
              if(!empty($query_row['Address2'])) // This will skip if the field if it's empty
              echo $query_row['Address2'].'<br>';
              echo $query_row['City'].', ';
              echo $query_row['State'].'  ';
              echo $query_row['Zip'].'<br>';
              echo '<p><strong>Phone Number: </strong></p>';
              echo $query_row['Phone'].'<br>';
              echo '<p><strong>Fax Number: </strong></p>';
              echo $query_row['Fax'].'<br><br>';
              echo "</td>";
              echo "</tr>";
              echo "</table>";
              echo "</td>";
              //BeginImage display result
              $res=mysql_query("select * from Images");
                          {
              echo "<td width='703' align='right' valign='top'>";?> <img src="<?php echo $query_row["Image"]; ?>">  <?php echo "</td>";
              echo "</tr>";
              }

             //EndImage display result
              }
              }
        }else{
         echo 'No results found.';
    }
        }else{
         echo 'Your search must be a 5-digit zip code.';
    }

              }
  }

?>              
if(strlen($search_name) == 5 || strlen($search_name) == 6) {
// Whatever your code is here
}

只有当字符串长度为5个字符或6个字符时,此条件才会通过

Strlen手册此处