【发布时间】: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