Как искать из двух таблиц в mysql php

У меня есть окно поиска в моем файле PHP. но он ищет только из одной таблицы с именем «страны» но у меня есть другая таблица «континент». Я хочу, чтобы мое окно поиска получало результаты из обеих таблиц «страны» и «континент». в настоящее время это выглядит так[моё окно поиска][1]

<?php
/* Attempt MySQL server connection. Assuming you are running MySQL
server with default setting (user 'root' with no password) */
$link = mysqli_connect("localhost", "root", "", "test");
 
// Check connection
if ($link === false){
    die("ERROR: Could not connect. " . mysqli_connect_error());
}
 
if (isset($_REQUEST["term"])){
    // Prepare a select statement
    $sql = "SELECT * FROM countries WHERE name LIKE ?";
          
         
    
    if ($stmt = mysqli_prepare($link, $sql)){
        // Bind variables to the prepared statement as parameters
        mysqli_stmt_bind_param($stmt, "s", $param_term);
        
        // Set parameters
        $param_term = $_REQUEST["term"] . '%';
        
        // Attempt to execute the prepared statement
        if (mysqli_stmt_execute($stmt)){
            $result = mysqli_stmt_get_result($stmt);
            
            // Check number of rows in the result set
            if (mysqli_num_rows($result) > 0){
                // Fetch result rows as an associative array
                while($row = mysqli_fetch_array($result, MYSQLI_ASSOC)){
                   
                    echo '<img src = "'.$row['image'].' "width = "85px" height = "85px" >';
                    echo '<p><a href = "deteles.php?ID='. $row['id'] .'" target = "_blank">'. $row['name']. '</a></p>';
                   
                    
                }
            } else{
                echo "<p>No matches found</p>";
            }
        } else{
            echo "ERROR: Could not able to execute $sql. " . mysqli_error($link);
        }
    }
     
    // Close statement
    mysqli_stmt_close($stmt);
}
 
// close connection
mysqli_close($link);
?>

а это мои таблицы[table1][2] [таблица3][3]

<!DOCTYPE html>
<html lang = "en">
<head>
<meta charset = "UTF-8">
<title>PHP Live MySQL Database Search</title>
<style type = "text/css">
    body{
        font-family: Arail, sans-serif;
    }
    /* Formatting search box */
    .search-box{
        width: 100%;
        position: relative;
        display: inline-block;
        font-size: 14px;
    }
    .search-box input[type = "text"]{
        height: 32px;
        padding: 5px 10px;
        border: 1px solid #CCCCCC;
        font-size: 14px;
    }
    .result{
        position: absolute;        
        z-index: 999;
        top: 100%;
        left: 0;
        overflow: auto;
    }
    .search-box input[type = "text"], .result{
        width: 100%;
        box-sizing: border-box;
    }
    /* Formatting result items */
    .result p{
        margin: 0;
        padding: 7px 10px;
        border: 1px solid #CCCCCC;
        margin-top: -60px;
        cursor: pointer;
        margin-left: 94px;
    }
    .result p:hover{
        background: #f2f2f2;
    }
    .result img{
        float: left;
        float: unset;
        margin-top: 30px;
    }
    .result p a{
        text-decoration: none;
    }
</style>
<script src = "https://code.jquery.com/jquery-1.12.4.min.js"></script>
<script type = "text/javascript">
$(document).ready(function(){
    $('.search-box input[type = "text"]').on("keyup input", function(){
        /* Get input value on change */
        var inputVal = $(this).val();
        var resultDropdown = $(this).siblings(".result");
        if (inputVal.length){
            $.get("backend-search.php", {term: inputVal}).done(function(data){
                // Display the returned data in browser
                resultDropdown.html(data);
            });
        } else{
            resultDropdown.empty();
        }
    });
    
    // Set search input value on click of result item
    $(document).on("click", ".result p", function(){
        $(this).parents(".search-box").find('input[type = "text"]').val($(this).text());
        $(this).parent(".result").empty();
    });
});
</script>
</head>
<body>
    <div class = "search-box">
        <input type = "text" autocomplete = "off" placeholder = "Search country..." />
        <div class = "result"></div>
    </div>
</body>
</html>

Это два моих файла PHP.

Объединить таблицы базы данных через JOIN

Honk der Hase 25.12.2020 18:53

Отвечает ли это на ваш вопрос? Поиск в нескольких таблицах (SQL)

Dipanshu Mahla 25.12.2020 19:14

См. meta.stackoverflow.com/questions/333952/…

Strawberry 26.12.2020 02:29
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
0
3
111
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Вы можете использовать СОЮЗ. Единственное условие — количество столбцов должно совпадать в обоих запросах. Вот пример

SELECT id, name, 'country' FROM countries WHERE name LIKE '%America%' 
UNION
SELECT id, name, 'continent' FROM continents WHERE name LIKE '%America%';

Отображение «континента» в столбце «страна» кажется немного извращенным.

Strawberry 26.12.2020 02:28

Другие вопросы по теме