【问题标题】:fetching content by id and displaying by url php mysql通过 id 获取内容并通过 url php mysql 显示
【发布时间】:2014-05-12 06:37:44
【问题描述】:

我的数据库电影中有两列

  1. 电影ID
  2. url(电影名称)

我不知道这怎么可能:

我想通过filmId 获取数据,但显示(点击后)带有电影名称的网址

例如“百万美元”。

为什么我要这样做,因为我有一个单独的歌曲表,并且如果该电影有歌曲(将匹配歌曲表中的 filmid 并显示歌曲)该电影

$url=$_GET['url'];
$sql = "SELECT * FROM films WHERE url='$url'";

我需要帮助才能使用 php,因为我是新手,对 php 知之甚少。

表结构 电影桌

电影ID 电影名称 网址 导向器 演员

歌单

歌曲编号 歌名 电影编号 电影名

【问题讨论】:

  • films 是您的数据库的名称还是一个表?如果你也能给出你的表结构,那就更好了。
  • 也显示您的示例网址?
  • @ Rakesh efilmsworld.com/million-dollar-arm-film-2014.html 这是我已经使用 htaccess 完成的,因为我通过 url 获取但无法显示该电影的歌曲
  • 你可以通过left join或Inner join来加入两张表电影和歌曲。
  • 那么您在遍历结果集时遇到问题吗?

标签: php mysql sql


【解决方案1】:

使用下面的代码:

$url=$_GET['url']; 
$sql = "SELECT * FROM songs s 
inner join films f on s.filmId = f.filmId 
WHERE f.url='$url'";

$result = mysql_query($sql);
while($row = mysql_fetch_object($result)){
    print_r($row);
}

【讨论】:

  • 嗨,Harry,非常感谢,它工作了,但还有一个问题,它只显示电影的一首歌曲,但我想显示该电影的所有歌曲,在歌曲表中具有相同的 filmid
  • @RRPandey:那么您需要更改您的查询。
  • $url=$_GET['url']; $sql = "SELECT * FROM 歌曲 s 内连接电影 f on s.filmId = f.filmId WHERE f.url='$url'";
  • 运气不好 '$url=$_GET['url']; $sql = "SELECT * FROM 歌曲 s 内连接电影 f on s.filmId = f.filmId WHERE f.url='$url'";并回显这个 'echo "" ;'
  • @Harry 运气不好 $url=$_GET['url']; $sql = "SELECT * FROM 歌曲 s 内连接电影 f on s.filmId = f.filmId WHERE f.url='$url'"; $result = mysql_query($sql); while($row = mysql_fetch_array($result)) { $filmId=$row['filmId']​​;$filmName=$row['filmName'];$url=$row['url'];..... ..ETC。 $songVideo=$row['songVideo'];$songName=$row['songName'];......等等。回声“$电影名称”; ------ ------ 等 echo "
    \n"; echo ""; echo "
    \n";
猜你喜欢
  • 2012-01-07
  • 2016-08-09
  • 1970-01-01
  • 2012-12-20
  • 2017-04-03
  • 2012-07-09
  • 1970-01-01
  • 2015-09-02
  • 1970-01-01
相关资源
最近更新 更多