Я искал способ интегрировать изображения фильмов в их заголовки в текстовое поле автозаполнения jQuery в форме, и я нашел IMDb Предложить довольно полезно.
Он работает отлично, но единственная проблема, которую я заметил, это то, что он возвращает названия фильмов, сериалов, актеров, режиссеров и т. Д. В то время как Мне нужны ТОЛЬКО ФИЛЬМЫ.
Можно ли получить в моем автозаполненном текстовом поле только названия фильмов, интегрированные с их изображением (не сериалы, не актеры …)? (Я имею в виду, что я хочу отключить функцию автозаполнения для актеров, сериалов и т. Д., Поэтому, если пользователь набрал «Том ..» в поле поиска, он не должен показывать «Том Крис» ..)
PS. Если это невозможно, как я могу показать маленькое изображение фильмов, когда пользователь вводит название фильма в текстовое поле с автозаполнением? Я просмотрел ссылки на фильмы в IMDb и сохранил их в своей базе данных. (Я видел Это похожий вопрос, но на самом деле, он не использовал изображения, хранящиеся в БД, что в моем случае)
Чтобы избежать сериалов, я просмотрел список названий фильмов IMDb и сохранил их в своей БД. Я пытаюсь сравнить строку, которую пользователь вводит, с заголовками в моей БД, например, если совпадение не найдено, это означает, что это не фильм, а может быть, например, телесериал.
Вот что я изменил в предложить.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
Тем не менее, это не работает: |
Задать условие (актер, сериал, режиссер и сценарист) & отфильтровать результаты на странице предложений (строка № 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']);
}
Других решений пока нет …