2016-02-12 2 views
1

Я делаю простой сайт для фильмов, и я хочу отображать связанные фильмы на странице .. проблема, что моя база данных содержит американские и индийские фильмы в фильмах table Я пытаюсь найти что, когда посетитель нажимает на какой-либо американский фильм, связанные фильмы будут отображаться только в американских фильмах (в моей таблице есть столбец под названием «movie_lang», который обозначает американские фильмы как номер 1, а индийский - как номер 2) это далеко поскольку я могу получитьКак получить конкретные записи

$query=mysql_query("select * from movies order by id desc limit 4"); 
     while($m=mysql_fetch_assoc($query)){ 
    if($m['movie_lang']== '1'){ 
      echo '<a href="view_movie.php?id='.$m['id'].'"><img src="uploads/poster/'.$m['thumbnail'].'" title="'.$m['name'].'"></a>' ;} 
    else{ 

      echo '<div class="hidden"></div>"'; 
    } 

     } 

не уверен в моем коде. извините ... новинка в этом ...

+0

Почему бы не использовать "select * from movies where movie_lang = 1 order by id desc limit 4"? Кроме того, этот код дает вам ошибку? Если да, напишите об этом. – Hiphop03199

+0

не может этого сделать, потому что это отображает только фильмы, помеченные как 1 (американские фильмы), а код работал, не уверен, что делать дальше, спасибо –

ответ

1

Если вы хотите отображать только американские фильмы, потому что посетитель нажимает на нее, вы можете показать все американские фильмы, используя свою базу данных запросов.

$query = mysql_query("select * from movies where movie_lang = 1 order by id desc limit 4"); 

Если вы хотите, индийские фильмы, просто изменить параметр в movie_lang до 2. Этот параметр может быть для вас запрос GET.

1

Хорошо, я понимаю, что понимаю эту проблему, дайте мне знать, если я пропустил ее, хотя: вы хотите перечислить все виды фильмов, но если пользователь нажимает ссылку на американский фильм, вы хотите показать ему только американскую языковые фильмы на более поздних страницах. Вот моя идея:

// When a page loads, it checks if the 'selected_lang' variable is set. If so, it creates a language filter 
$previous_lang = isset($_GET['selected_lang'] && is_numeric($_GET['selected_lang'])) ? " where movie_lang = " . $_GET['selected_lang'] . " " : ""; 

// We assemble queries which will use a language filter if we have one, or all languages if not 
$query=mysql_query("select * from movies $previous_lang order by id desc limit 4"); 

while($m=mysql_fetch_assoc($query)){ 
    if($m['movie_lang']== '1'){ 
     // We include a 'selected_lang' variable in our link, so that page now nows the language of the movie the user picked 
     echo '<a href="view_movie.php?selected_lang=1&id='.$m['id'].'"><img src="uploads/poster/'.$m['thumbnail'].'" title="'.$m['name'].'"></a>' ; 
    } else { 
     echo '<div class="hidden"></div>"'; 
    } 
} 

Этот код выглядит, чтобы увидеть, если «selected_lang» был установлен, и если да, то использует его для последующих запросов SQL. Возможно, вам придется измельчать биты здесь и там на разные страницы и, возможно, перестроить их, если вы хотите написать свои собственные (разумные) предложения.

Дайте мне знать, если вам нужна дополнительная помощь.

Смежные вопросы