ok to taki przykład, który zobrazuje Ci jak to mniej więcej może działać, oczywiści musisz to dopasować do swojej sytuacji:
pobieramy TOP20 filmów, sortując je względem oceny od najwyższej do najniższej
//pobieramy 20 najwyżej ocenionych filmow i wkładamy je do tablicy zachowując kolejność
$sql = "SELECT movie_id, (vote_sum/vote_count) as rank FROM movies ORDER BY rank DESC";
{
$top_movies[] = $row['movie_id'];
}
potem kiedy już sobie pobierzesz informacje o filmie i masz jego ID, to sprawdzasz czy jest w TOP20, jeśli tak to na jakiej pozycji:
//sprawdzamy czy film jest w top 20
{
$position = array_search($movie_id, $top_movies) +1; // dodajemy jeden bo w tablicy numeracja zaczyna się od 0 }
if($position <=3 )
{
echo "film znajduje się w TOP3"; }elseif($position > 3 && $position <=10)
{
echo "film znajduje się w TOP10"; }
Oczywiście żeby na każdej podstronie filmu, zbędnie nie wykonywać połączenia do pobierania top20, można zapisać je do sesji:
$_SESSION['top_movies'] = array(); $_SESSION['top_movies'] = $top_movies;
i wtedy już do funkcji in_array() i array_search() używasz tej zmiennej sesyjnej