Verberg suggesties in autocomplete contain something
Enrique Gervaso
21/09/2016 11:45:24Ik ben bezig een search autocomplete te maken voor films. Hiervoor wordt IMDB uitgelezen.
Het script toont echter nu ook de auteurs
Om dit te voorkomen wil ik dat alle resultaten die starten met
NM (voorbeeld; nm7140802 is een resultaat naar een auteur) worden verborgen. Alleen resultaten startende met TT (voorbeeld tt0133093) mogen zichtbaar zijn.
Iemand enig idee hoe ik dat hierin moet aanvullen?
Het script toont echter nu ook de auteurs
Om dit te voorkomen wil ik dat alle resultaten die starten met
NM (voorbeeld; nm7140802 is een resultaat naar een auteur) worden verborgen. Alleen resultaten startende met TT (voorbeeld tt0133093) mogen zichtbaar zijn.
Iemand enig idee hoe ik dat hierin moet aanvullen?
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
<?php
//Autocomplete suggestions for IMDB movies
try{
$term = trim(strtolower($_REQUEST['term']));
$search = str_replace(array(" ", "(", ")"), array("_", "", ""), $term); //format search term
$firstchar = substr($search,0,1); //get first character
$url = "http://sg.media-imdb.com/suggests/${firstchar}/${search}.json"; //format IMDb suggest URL
$jsonp = @file_get_contents($url); //get JSONP data
preg_match('/^imdb\$.*?\((.*?)\)$/ms', $jsonp, $matches); //convert JSONP to JSON
$json = $matches[1];
$arr = json_decode($json, true);
$s = array(); //New array for jQuery Autocomplete data format
if(isset($arr['d'])){
foreach($arr['d'] as $d){
$img = preg_replace('/_V1_.*?.jpg/ms', "_V1._SY50.jpg", $d['i'][0]);
$s[] = array('label' => $d['l'], 'value' => $d['id'], 'q' => $d['q']);
}
}
header('content-type: application/json; charset=utf-8');
echo json_encode($s); //Convert it to JSON again
} catch (Exception $e){
//Do nothing
}
?>
//Autocomplete suggestions for IMDB movies
try{
$term = trim(strtolower($_REQUEST['term']));
$search = str_replace(array(" ", "(", ")"), array("_", "", ""), $term); //format search term
$firstchar = substr($search,0,1); //get first character
$url = "http://sg.media-imdb.com/suggests/${firstchar}/${search}.json"; //format IMDb suggest URL
$jsonp = @file_get_contents($url); //get JSONP data
preg_match('/^imdb\$.*?\((.*?)\)$/ms', $jsonp, $matches); //convert JSONP to JSON
$json = $matches[1];
$arr = json_decode($json, true);
$s = array(); //New array for jQuery Autocomplete data format
if(isset($arr['d'])){
foreach($arr['d'] as $d){
$img = preg_replace('/_V1_.*?.jpg/ms', "_V1._SY50.jpg", $d['i'][0]);
$s[] = array('label' => $d['l'], 'value' => $d['id'], 'q' => $d['q']);
}
}
header('content-type: application/json; charset=utf-8');
echo json_encode($s); //Convert it to JSON again
} catch (Exception $e){
//Do nothing
}
?>
Er zijn nog geen reacties op dit bericht.