我还是网络开发的初学者。我创建了一个在线流媒体网站,我在查看已完成的剧集方面遇到了问题。 我希望该网站能够在一个页面上查看管理员向用户完全上传的所有剧集。 这是我的代码:
<?php
$check = mysqli_query($link,"SELECT title_s FROM drama");
$sar = mysqli_fetch_assoc($check);
$title_ss = $sar['title_s'];
$sql = mysqli_query($link,"SELECT * FROM `drama` d INNER JOIN `episoded` e ON d.title_s= e.title_s WHERE d.title_s = '$title_ss'");
$result = mysqli_num_rows($sql);
$query = mysqli_query($link,"SELECT * FROM drama WHERE epnumber = '$result'");
while($row = mysqli_fetch_assoc($query)){
$title = $row['title_s'];
$entitle = $row['entitle_s'];
$imagelink = $row['imagelink'];
echo'
<div class="col-lg-3 col-md-4 col-sm-6 portfolio-item lol">
<div class="card h-10">
<a href="http://localhost/project/main/series.php?title='.$title.'"><img class="card-img-top image" src="'.$imagelink.'" alt=""></a>
<div class="card-body">
<h4 class="card-title">
<a href="http://localhost/project/main/series.php?title='.$title.'">'.$entitle.'/'.$title.'</a>
</h4>
</div>
</div>
</div>
';
}
?>
它显示了我唯一的结果 ps:我有两个表格用于戏剧类型,另一个用于剧集信息..
答案 0 :(得分:0)
您正在执行此代码:
$result = mysqli_num_rows($sql);
$query = mysqli_query($link,"SELECT * FROM drama WHERE epnumber = '$result'");
在第一行中,y 您从先前的查询中获得了许多行。我不知道你会期望多少行,但无论如何,mysqli_num_rows将返回一个整数。
然后,您查询并使用此数字搜索您在输出块中显示的一集。
正在发生的事情并不神秘:你没有正确使用mysqli_num_rows,但即使你是,你的第二个查询仍将只返回一行,除非戏剧表中有多行具有相同的epnumber 。
无论哪种方式, 先前查询中的行数与epnumber无关 。
我需要更好地理解您的架构以确定正确的查询,但您明确的不正确。你有多个问题,所以你不清楚你想要做什么,但我不得不想知道为什么你有一个&#39;戏剧&#39;表。你还有一部喜剧片吗?表
您不应该为每个类型的程序都有单独的表。你应该为所有节目提供一些表格(例如,剧集和剧集),每个节目应该与一个或多个类型相关(取决于你的偏好)。