[英]UNION search in multiple tables in php
您好天才的程序員可以幫助我找出我在UNION搜索錯誤中的錯誤:“ mysqli_fetch_array()期望參數1為mysqli_result,布爾值”。
<?php
if(isset($_GET['search'])) {
$search_key = $_GET['search'];
$sql_search = "(SELECT lastname, firstname, 'organization_member' as type FROM org_member WHERE lastname LIKE '%" .
$search_key . "%' OR firstname LIKE '%" . $search_key ."%')
UNION
(SELECT title, 'fedetated_member' as type FROM fedetated_members WHERE title LIKE '%" .
$search_key . "%')";
$query_search = mysqli_query($CONNECTION, $sql_search);
}
?>
<div class='body_wrap'>
<div class='inner_wrap'>
<span class='text_black_big'>SEARCH RESULT FOR: <?php echo $_GET['search']; ?></span>
<table>
<?php while($row_search = mysqli_fetch_array($query_search)) { ?>
<tr>
<td><br><?php echo $row_search['organization_member'] ?><br><br><?php echo $row_search['fedetated_member'] ?><br></td>
</tr>
<?php } ?>
</table>
</div>
</div>
https://msdn.microsoft.com/en-us/library/ms180026.aspx
將兩個或多個查詢的結果合並為一個結果集,該結果集包含屬於聯合中所有查詢的所有行。 UNION操作不同於使用合並兩個表中的列的聯接。 以下是使用UNION組合兩個查詢的結果集的基本規則:所有查詢中的列數和順序必須相同。 數據類型必須兼容。
您的查詢字符串不正確,因此$ query_search變量等於FALSE:
$ query_search = mysqli_query($ CONNECTION,$ sql_search);
您的SELECT語句必須選擇相同類型的列,並且第一個SELECT語句中的列名稱將用作返回結果的列名稱。 您可以在此處找到更多信息: UNION語法
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.