Php 如何将四个多表合并为一个结果?

Php 如何将四个多表合并为一个结果?,php,mysql,join,Php,Mysql,Join,我有个问题,我真的不知道我在做什么。我想创造的是这样的东西 我有四张桌子 movies | movie_categories series | show_categories 现在我想创建一个查询,该查询将连接所有4个表并以代码形式返回结果,这是我迄今为止尝试过的,但它不起作用 <?php if(isset($_GET['category_id']) && !empty($_GET['category_id'])) { $kategorij

我有个问题,我真的不知道我在做什么。我想创造的是这样的东西

我有四张桌子

movies | movie_categories
series | show_categories
现在我想创建一个查询,该查询将连接所有4个表并以代码形式返回结果,这是我迄今为止尝试过的,但它不起作用

<?php
    if(isset($_GET['category_id']) && !empty($_GET['category_id']))
    {
        $kategorija = $_GET['category_id'];

        /*$query = $connection->prepare('SELECT * FROM movies LEFT JOIN movie_categories ON movie_categories.movie_hash = movies.hash WHERE movie_categories.category LIKE ? ORDER BY movies.id DESC');*/
        $query = $connection->prepare("

                SELECT
                movie_categories.movie_hash,
                movie_categories.movie_category,
                show_categories.serie_hash,
                show_categories.serie_category
                FROM movie_categories
                INNER JOIN show_categories ON movie_categories.movie_hash != show_categories.serie_hash
                LEFT JOIN movies on movie_categories.movie_hash = movies.hash
                LEFT JOIN series on show_categories.serie_hash = series.hash
                WHERE movie_categories.movie_category LIKE ? 
                OR WHERE show_categories.serie_category LIKE ? 
        ");



        $query->bindValue(1, "%$kategorija%", PDO::PARAM_STR);
        $query->bindValue(2, "%$kategorija%", PDO::PARAM_STR);
        $query->execute();      

        if($query->rowCount() > 0)
        {
            $check = $query->fetchAll(PDO::FETCH_ASSOC);
            foreach($check as $row)
            {
                echo '
                    <div class="row" id="content">
                        <div class="col-md-2 col-sm-4 col-xs-6 animacija animated fadeInDown">
                            <div class="film">
                                <a href="watch.php?movie=',$row['hash'],'" title="',$row['name'],'">
                                <img alt="',$row['name'],'" width="165" height="250" class="img-responsive" src="',$row['thumb_location'],'">
                                    <span class="play animated flip">
                                    <i class="fa fa-play-circle fa-4x"></i>
                                    </span>
                                    </a>
                                    <div class="opis">
                                    <a href="watch.php?movie=',$row['hash'],'" title="',$row['name'],' "><h2>',$row['name'],' </h2></a>
                                    <div class="tekst">
                                    </div>
                                    <p>
                                    <span>
                                    <a href="godina.php?movie=',$row['year'],'" title="',$row['year'],'">',$row['year'],'</a>
                                    </span>
                                </p>
                            </div>
                        </div>
                    </div>
                ';          
            }
        }
        else
        {
            echo '<h3>U ovoj kategoriji nema filmova.</h3>';
        }
    }
    else
    {
        header("location: index.php");
        exit();
    }

?>

你得到了什么?当你说“不工作”时,结果是什么?我得到了最后一个ehco回音“U ovoj kategoriji nema filmova”;那么,在console/phpmyadmin中运行时,查询是否返回所需的结果?如果是这样的话,那么为了调试的目的,我会说,从小事做起。在“来自电影”类别的
处结束查询,以验证是否至少有效,然后添加第一个
JOIN
以查看它不会造成伤害,并获取附加数据,依此类推。。。