繁体   English   中英

mysqli根据行ID值显示数据

[英]mysqli display data based on row ID value

我需要根据其他表中的值在一行中显示文本,我将解释...逐步变得非常清晰。

名为“链接”的表具有名为“ title_id”的行

来自“链接”的该行“ title_id”在名为“ id”的行的其他表中具有“相同”的值。

表“ titles”有另一行称为“ title”-tis是wath,我需要以这种方式显示...

a href = .... /> TABLE将行title_id =链接到表标题行ID->在此处显示表标题行标题(基于表链接中的行title_id)</ a ...

希望您能理解,结果必须是(a href = ...> TEXT MOVIE TITLE </ a>)

这是我需要更改的基本代码(我已经注释了需要更改的部分):

    <?php
    $servername = "localhost";
    $username = "username";
    $password = "password";
    $dbname = "dbname";

    // Create connection
    $conn = new mysqli($servername, $username, $password, $dbname);
    // Check connection
    if ($conn->connect_error) {
        die("Connection failed: " . $conn->connect_error);
    } 

    $sql = "SELECT id, label, title_id, season, episode, approved FROM links WHERE approved = 1 order by id desc LIMIT 30 OFFSET 1";
    $result = $last_id = $conn->query($sql);


    if ($result->num_rows > 0)
     {
        echo "<table><tr><th>ID</th><th>Audio</th><th>URL</th><th>Temporada</th><th>Episodio</th><th>Aprobado</th></tr>";
        // output data of each row
        while($row = $result->fetch_assoc()) {
            echo "<tr><td>".$row["id"]."</td><td>".$row["label"]."</td>";
            echo "<td>";
            if (empty($row['episode'])) {
         echo "<a href=";
         echo '/peliculas-online/'.$row["title_id"];
         echo ">HERE MUST HAVE THE VALUE FROM TABLE titles -> row title - based on $row["title_id"] </a>";
// -------------------------
        }
        else {
        echo "<a href=";
         echo '/series-online/'.$row['title_id'].'/seasons/'.$row['season'].'/episodes/'.$row["episode"];
         echo ">HERE MUST HAVE THE VALUE FROM TABLE titles -> row title - based on $row["title_id"] </a>";
// -----------------------------------
            }
            echo "</td>";
            echo "<td>".$row["season"]."</td><td>".$row["episode"]."</td><td>".$row["approved"]."</td></tr>";


        }
        echo "</table>";
    } else {
        echo "0 results";
    }
    $conn->close();
    ?>

您只需要稍微修改一下查询即可获取此信息。 您可以像这样在这些ID上加入标题:

SELECT l.id, l.label, l.title_id, t.title, l.season, l.episode, l.approved 
FROM links l
JOIN titles t
ON l.title_id = t.id
WHERE approved = 1 
ORDER by id DESC
LIMIT 30 OFFSET 1

然后,您可以像以前一样调用变量。 同一查询将具有row['title']

了解有关MySQL联接的更多信息

要在脚本中获取此信息,只需替换以下行:

echo ">HERE MUST HAVE THE VALUE FROM TABLE titles -> row title - based on $row["title_id"] </a>";

有了这个:

echo '>'.$row['title'].'</a>';

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM