【问题标题】:Integrate an image to movie titles in IMDb Suggest autocomplete将图像集成到 IMDb 中的电影标题建议自动完成
【发布时间】:2014-12-15 10:49:39
【问题描述】:

我正在寻找一种将电影图像集成到表单中的 jQuery 自动完成文本框中的标题的方法,我发现 IMDb Suggest 非常有用。 它运行良好,但我注意到的唯一问题是它返回电影标题、电视剧、演员、导演等。而 我只需要电影标题。

问题:

有没有办法在我的自动完成文本框中(不是电视剧、不是演员……)中只获取与其图像集成的电影标题? (我的意思是我想禁用演员、系列等的自动完成功能,所以如果用户在搜索框中输入“Tom..”,它不应该显示“Tom Criuse”..)

PS。如果不可能,当用户在自动完成文本框中输入电影名称时,如何显示电影的小图像?我已经抓取了电影的 IMDb 海报链接并将它们保存在我的数据库中。 (我看到This similar question,但实际上,它并没有使用存储在数据库中的图像,这是我的情况)

更新:

为了避免看电视剧,我爬取了 IMDb 电影标题列表并将它们保存在我的数据库中。我正在尝试将用户输入的字符串与我的数据库中的标题进行比较,如果没有找到匹配项,则表示它不是电影,它可能是 g.g., TV-series..

这是我在Suggest.php中所做的更改:

if(isset($arr['d'])){
  foreach($arr['d'] as $d){
           try{
              include('imdbconnection.php');
              $stmt = $conn->prepare("SELECT movieName FROM featuredfilms_EN WHERE movieName = :term");
              $stmt->bindValue(':term', $d['l']);
              $stmt->execute();
              $result = $stmt->fetch(PDO::FETCH_OBJ);

             if (!empty($result)) {

            $img = preg_replace('/_V1_.*?.jpg/ms', "_V1._SY50.jpg", $d['i'][0]);

                if ((strpos($d['s'], "Actor,") === false) {
                       $s[] = array('label' => $d['l'], 'value' => $d['id'], 'cast' => $d['s'], 'img' => $img, 'q' => $d['q']);
                       }   
                 //REST OF THE CODE 

但是,它不起作用:|

【问题讨论】:

  • 您不能只从结果中提取标题 (lab.abhinayrathore.com/imdb_suggest)?
  • @JensonMJohn:抱歉,我不明白您的评论是问题还是答案! :p
  • 这是我的问题。你说'它返回电影标题、电视剧、演员、导演等' 那么如果它包含标题,为什么不能只提取标题?它以 JSON 格式返回,对吗?
  • @JensonMJohn:好吧!我不知道如何解释更多:(如果您在我的问题中分享的链接中看到了Suggest.php代码,您可能会理解我的问题
  • 第23行(lab.abhinayrathore.com/imdb_suggest/suggest.htm?820456607)改成$s[] = array('label' => $d['l']);

标签: javascript php jquery json imdb


【解决方案1】:

设置条件(演员、电视剧、导演和作家)并在建议页面中过滤结果(第 23 行)

if (strpos($d['s'], "Actor,") === false) { // Here avoiding all actors
$s[] = array('label' => $d['l'], 'value' => $d['id'], 'cast' => $d['s'], 'img' => $img, 'q' => $d['q']);
}

【讨论】:

  • 对不起,再问一个问题:为了避免看电视剧,我已经爬取了 IMDb 电影标题列表并将它们存储在我的数据库中(而不是电视剧),所以我只是想知道它是否可以将用户键入的字符串与我的数据库中的这些电影标题进行比较,如果在 DB 中找不到该字符串,则表示它不是电影(例如,它可能是电视剧)...你有什么想法吗?
  • 我已经更新了我的问题,所以你可以看到我做了什么......但它不起作用! )
  • @mOna 让我看看。只需发送邮件至 jenson555@gmail.com
  • 非常感谢!我应该通过电子邮件向您发送什么?需要suggest.php的代码还是s.th else的代码?
  • 好的,但是我已经在我的问题中给出了 IMDb 建议的链接 :p ,我现在会给你发电子邮件 :)
猜你喜欢
  • 2014-02-08
  • 2014-12-15
  • 1970-01-01
  • 2014-08-05
  • 2013-04-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多