2017-02-20 27 views
0

我有一个while循环打印出搜索结果中的行,搜索结果中的一列是'Area Name'。 现在我想检查该区域名称是否也在另一个结果集中,如果是,请使产品可点击。PHP检查一个值是否等于另一个结果集中的任何值?

这是我的搜索结果,而循环:

<table id="" class="table table-striped table-bordered display" cellspacing="0" width="100%"> 
<thead> 
    <tr> 
     <th>Customer Code</th> 
     <th>Customer Name</th> 
     <th>Customer Type</th> 
     <th>Name</th> 
     <th>Postcode</th> 
    </tr> 
</thead> 
<tbody> 
    <?php while($customer = sqlsrv_fetch_array($querySearchResults, SQLSRV_FETCH_ASSOC)) : ?> 
     <tr> 
      <td><?php echo $customer['CardCode'] ?></td> 
      <td> 
       //If $customer['Name'] = to any of the rows in other query 
        //This is Clickable 
        <?php echo $customer['CardName']; ?> 
       //Else its not. 
      </td> 
      <td><?php echo $customer['CardType'] ?></td> 
      <td><?php echo $customer['Name'] ?></td> 
      <td><?php echo $customer['ZipCode'] ?></td> 
     </tr> 
    <?php endwhile; ?> 
</tbody> 
</table> 

这是其他查询:

$userID = $user['loggedInUserId']; 
$queryName = " 
    SELECT UserID, Name 
    FROM Table 
    WHERE UserID = '$userID'"; 
$getName = sqlsrv_query($sapconn2, $queryName); 
$Name = sqlsrv_fetch_array($getName, SQLSRV_FETCH_ASSOC); 

会是什么样的if语句需要在这种情况下?

+0

如果结果在数组中,您可以使用'in_array()'进行检查。 –

+0

这里的代码不一致。 '另一个查询'似乎只返回一行或者你至少你只是检索一行!所以如果这样的话,所有你需要做的就是'if($ customer ['Name'] == $ Name ['name']){' – RiggsFolly

+0

是的,我明白你的意思,它只会返回一行,不是吗?这就是我错误的地方,我可能不得不改变我的SQL以包含另一个WHERE子句并检查。感谢您的意见 – PHPNewbie

回答

1

假设您的示例代码解释了真实情况,您的other Query只能检索一行。因此,在你的主代码,再假设你已经完成之前,该other Query只是运行需要做

<?php while($customer = sqlsrv_fetch_array($querySearchResults, SQLSRV_FETCH_ASSOC)) : ?> 
    <tr> 
     <td><?php echo $customer['CardCode'] ?></td> 
     <td> 
<?php 
if ($customer['Name'] == $Name['name']) { 
    //This is Clickable 
    //echo $customer['CardName']; 
} 
?> 

     </td> 
     <td><?php echo $customer['CardType'] ?></td> 
     <td><?php echo $customer['Name'] ?></td> 
     <td><?php echo $customer['ZipCode'] ?></td> 
    </tr> 
<?php endwhile; ?> 

至于使其点击,我们需要更多地了解你想去的网址和参数要发送给它的锚标记,但例如

此行

<?php echo $customer['CardName']; ?> 

就应该像这样

<?php echo "<a href='folder/file.php?param=something'>{$customer['CardName']} </a>" ?> 
相关问题