2 回答

TA貢獻(xiàn)1851條經(jīng)驗(yàn) 獲得超4個(gè)贊
您正在返回一個(gè)值。如果我必須出示所有用戶卡,我會(huì)這樣做。
<?php?
? ? require "connection.php";
? ? $search = $_POST['search'];
? ? $sql = "SELECT users.first_name, users.second_name, cards.card_number
? ? ? ? ? ? FROM users
? ? ? ? ? ? INNER JOIN cards
? ? ? ? ? ? ON cards.user_id = users.id
? ? ? ? ? ? WHERE
? ? ? ? ? ? users.first_name = '$search'
? ? ? ? ? ? OR users.second_name = '$search'";
? ? $query = mysqli_query($db, $sql);
while ($row = mysqli_fetch_assoc($query)) {
? ? echo $row['first_name']." ".$row['second_name']." ",
? ? $row['card_number'];?
}?
?>
這應(yīng)該為每張卡打印一行。
您還可以更改類似這樣的 where 子句來(lái)查找部分字符串:
users.first_name LIKE '%$search%'?
但是,如果您希望能夠搜索卡號(hào)并找到其所有者的所有關(guān)聯(lián)卡,那么您必須采取一些額外的步驟。
我會(huì)去做這樣的事情:
?SELECT t1.customerIDi, cards.number, customer.*?
?FROM CARDS
?LEFT JOIN customer ON cards.CustomerID = customer.id
?INNER JOIN (
? ? ?SELECT customer.id AS customerIDi
? ? ?FROM customer
? ? ?LEFT JOIN cards
? ? ?ON cards.CustomerID = customer.id
? ? ?WHERE
? ? ?Cards.Number = "$search"
?) AS t1
?ON t1.customerIDi = cards.CustomerID
我嵌套了一個(gè)選擇來(lái)查找卡所有者,然后獲取所有關(guān)聯(lián)的卡。

TA貢獻(xiàn)1874條經(jīng)驗(yàn) 獲得超12個(gè)贊
跑步
$results = mysqli_fetch_assoc($query);
foreach( $results as $result) {
echo .....
}
- 2 回答
- 0 關(guān)注
- 154 瀏覽
添加回答
舉報(bào)