I am trying to setup a Top 25 that shows the popular categories in the last one week with a random thumbnail for each category.
After going through the forums, i created this but this does not show unique categories. Instead it shows recently added images
![Sad :(](https://www.4homepages.de/forum/Smileys/default/icon_sad.gif)
Can someone help?
function getDaysInWeek($week="",$year=""){
$year = ($year) ? $year : date("Y");
$week = ($week) ? $week : date("W");
$time = strtotime($year.'0104+'.($week - 1).'weeks');
$mondayTime = strtotime('-'.(date('w',$time)-1).'days',$time);
$dayTimes = array();
for ($i = 0; $i < 7;++$i){
$dayTimes[] = strtotime('+'.$i.'days', $mondayTime);
//$dayTimes[] = date("d.m.Y",strtotime('+'.$i.'days', $mondayTime));
}
return $dayTimes;
}
$lastweek = date("W") -1;
$weekday = getDaysInWeek($lastweek);
$num_new_images = $config['image_cells'];
$sql = "SELECT i.image_id, i.cat_id, i.user_id, i.image_name, i.image_description, i.image_keywords, i.image_date, i.image_active, i.image_media_file, i.image_thumb_file, i.image_download_url, i.image_allow_comments, i.image_comments, i.image_downloads, i.image_votes, i.image_rating, i.image_hits".$additional_sql.", c.cat_name".get_user_table_field(", u.", "user_name")."
FROM (".IMAGES_TABLE." i, ".CATEGORIES_TABLE." c)
LEFT JOIN ".USERS_TABLE." u ON (".get_user_table_field("u.", "user_id")." = i.user_id)
WHERE i.image_active = 1 AND c.cat_id = i.cat_id AND i.cat_id NOT IN (".get_auth_cat_sql("auth_viewcat", "NOTIN").") AND i.image_date BETWEEN ".$weekday[0]." AND ".($weekday[6] + 86399)."
ORDER BY i.image_hits DESC
LIMIT 25
";
$result = $site_db->query($sql);
$num_rows = $site_db->get_numrows($result);
if (!$num_rows) {
$last_week = "<table width=\"".$config['image_table_width']."\" border=\"0\" cellpadding=\"".$config['image_table_cellpadding']."\" cellspacing=\"".$config['image_table_cellspacing']."\"><tr class=\"imagerow1\"><td>";
$last_week .= "No Images last week !";
$last_week .= "</td></tr></table>";
}
else {
$last_week = "<ul>";
$count = 0;
$bgcounter = 0;
while ($image_row = $site_db->fetch_array($result)){
if ($count == 0) {
$row_bg_number = ($bgcounter++ % 2 == 0) ? 1 : 2;
// $last_week .= "<tr class=\"imagerow".$row_bg_number."\">\n";
}
$last_week .= "<li>\n";
show_image($image_row);
$last_week .= $site_template->parse_template("thumbnail_bit");
$last_week .= "\n</li>\n";
$count++;
if ($count == $config['image_cells']) {
// $last_week .= "</tr>\n";
$count = 0;
}
} // end while
if ($count > 0) {
$leftover = ($config['image_cells'] - $count);
if ($leftover >= 1) {
for ($f = 0; $f < $leftover; $f++) {
$last_week .= "<li>\n \n</li>\n";
}
//$last_week .= "</tr>\n";
}
}
$last_week .= "</ul>\n";
} // end else
$site_template->register_vars("last_week", $last_week);
unset($last_week);