如何在PHP中从phpmyadmin一起回显相同id的所有行
我的代码:如何在PHP中从phpmyadmin一起回显相同id的所有行,php,mysql,phpmyadmin,Php,Mysql,Phpmyadmin,我的代码: $stmt = $conn->prepare("SELECT tmdb_movies.movie_title, images.image_url FROM tmdb_movies JOIN images ON images.images_tmdb_id=tmdb_movies.tmdb_id GROUP BY tmdb_movies.movie_title,images.image_url"); // Then fire it up $stmt
$stmt = $conn->prepare("SELECT tmdb_movies.movie_title, images.image_url
FROM tmdb_movies
JOIN images ON images.images_tmdb_id=tmdb_movies.tmdb_id
GROUP BY tmdb_movies.movie_title,images.image_url");
// Then fire it up
$stmt->execute();
// Pick up the result as an array
$result = $stmt->fetchAll();
// Now you run through this array in many ways, for example
for($x=0, $n=count($result); $x < $n; $x++){
echo'
'.$result[$x]["movie_title"].' - <img src="'.$result[$x]["image_url"].'"/>
';
}
tmdb_电影和图像表都通过tmdb_id连接您可以进行中断排序,查找重复的电影标题,仅当标题更改时才发出标题
$qstr = "";
$qstr .= "SELECT tmdb_movies.movie_title, images.image_url\n";
$qstr .= " FROM tmdb_movies\n";
$qstr .= " JOIN images ON images.images_tmdb_id=tmdb_movies.tmdb_id\n";
$qstr .= " GROUP BY tmdb_movies.movie_title,images.image_url";
$stmt = $conn->prepare($qstr);
// Then fire it up
$stmt->execute();
// Pick up the result as an array
$result = $stmt->fetchAll();
// Now you run through this array in many ways, for example
$lastTitle = "";
foreach($result as $x => $row) {
if($lastTitle != $row["movie_title"]) {
echo "\n".$row["movie_title"] . " - ";
$lastTitle = $row["movie_title"];
} else {
}
echo " <img src='".$row["image_url"]."'/>";
}
$qstr=”“;
$qstr.=“选择tmdb_movies.movie_title,images.image_url\n”;
$qstr.=“来自tmdb_电影\n”;
$qstr.=“在images.images\u tmdb\u id=tmdb\u movies.tmdb\u id\n上加入图像”;
$qstr.=“按tmdb_movies.movie_title,images.image_url分组”;
$stmt=$conn->prepare($qstr);
//然后点燃它
$stmt->execute();
//将结果提取为数组
$result=$stmt->fetchAll();
//现在,您可以通过多种方式运行此阵列,例如
$lastTitle=“”;
foreach($x=>$row的结果){
如果($lastTitle!=$row[“电影标题”]){
echo“\n”。$row[“电影标题”]。“-”;
$lastTitle=$row[“电影标题”];
}否则{
}
回声“;
}
显示带有一个或多个图像的电影的替代方法。这将按标题分组,并使用GROUP_CONCAT为每个标题创建图像列表
$qstr = "";
$qstr .= "SELECT tmdb_movies.movie_title, GROUP_CONCAT(images.image_url) as `images`\n";
$qstr .= "FROM tmdb_movies\n";
$qstr .= " JOIN images ON images.images_tmdb_id=tmdb_movies.tmdb_id\n";
$qstr .= "GROUP BY tmdb_movies.movie_title\n";
$qstr .= "LIMIT 10;";
$stmt = $conn->prepare($qstr);
// Then fire it up
$stmt->execute();
// Pick up the result as an array
$result = $stmt->fetchAll();
// Now you run through the results, one row per movie title.
foreach($result as $x => $row) {
echo "\n".$row["movie_title"] . " - ";
// Images will be comma separated if multiple images.
$img_list = explode(',',$row['images'];
foreach($img_list as $c => $img) {
echo " <img src='".$img."'/>";
}
}
$qstr=”“;
$qstr.=“选择tmdb_movies.movie_title,GROUP_CONCAT(images.image\u url)作为`images`\n”;
$qstr.=“来自tmdb_电影\n”;
$qstr.=“在images.images\u tmdb\u id=tmdb\u movies.tmdb\u id\n上加入图像”;
$qstr.=“tmdb_movies.movie_title的分组\n”;
$qstr=“限制10;”;
$stmt=$conn->prepare($qstr);
//然后点燃它
$stmt->execute();
//将结果提取为数组
$result=$stmt->fetchAll();
//现在,您运行结果,每个电影标题一行。
foreach($x=>$row的结果){
echo“\n”。$row[“电影标题”]。“-”;
//如果有多个图像,则图像将以逗号分隔。
$img_list=explode(',',$row['images'];
foreach($img_列表为$c=>$img){
回声“;
}
}
如果我只想获取一行,这将只起作用。它对我的代码不起作用。它应该在$result
中的所有行中运行。我一直都在使用它。在你做出这样的声明之前,请先尝试一下。兄弟,我还有其他东西。我需要对所有东西都执行相同的操作?比如,我有电影预算,电影版本enue,movie…我对所有的东西都这样做??是的,如果你想有选择地显示数据的某些部分。你的意思是??你忘记了组中的DISTINCT
。添加它后,它工作得非常好:D谢谢
tmdb_id images
1 sfdsfds.jpg
1 zcxz.jpg
2 fsfsdfs.jpg
3 dsfsdfs.jpg
3 dsfsfs.jpg
3 dfdsfdsw.jpg
$qstr = "";
$qstr .= "SELECT tmdb_movies.movie_title, images.image_url\n";
$qstr .= " FROM tmdb_movies\n";
$qstr .= " JOIN images ON images.images_tmdb_id=tmdb_movies.tmdb_id\n";
$qstr .= " GROUP BY tmdb_movies.movie_title,images.image_url";
$stmt = $conn->prepare($qstr);
// Then fire it up
$stmt->execute();
// Pick up the result as an array
$result = $stmt->fetchAll();
// Now you run through this array in many ways, for example
$lastTitle = "";
foreach($result as $x => $row) {
if($lastTitle != $row["movie_title"]) {
echo "\n".$row["movie_title"] . " - ";
$lastTitle = $row["movie_title"];
} else {
}
echo " <img src='".$row["image_url"]."'/>";
}
$qstr = "";
$qstr .= "SELECT tmdb_movies.movie_title, GROUP_CONCAT(images.image_url) as `images`\n";
$qstr .= "FROM tmdb_movies\n";
$qstr .= " JOIN images ON images.images_tmdb_id=tmdb_movies.tmdb_id\n";
$qstr .= "GROUP BY tmdb_movies.movie_title\n";
$qstr .= "LIMIT 10;";
$stmt = $conn->prepare($qstr);
// Then fire it up
$stmt->execute();
// Pick up the result as an array
$result = $stmt->fetchAll();
// Now you run through the results, one row per movie title.
foreach($result as $x => $row) {
echo "\n".$row["movie_title"] . " - ";
// Images will be comma separated if multiple images.
$img_list = explode(',',$row['images'];
foreach($img_list as $c => $img) {
echo " <img src='".$img."'/>";
}
}