За последние 24 часа нас посетил 17531 программист и 1673 робота. Сейчас ищут 1953 программиста ...

Обновление превью фото, без перезагрузки страницы

Тема в разделе "JavaScript и AJAX", создана пользователем MrAndrew, 30 ноя 2011.

  1. MrAndrew

    MrAndrew Активный пользователь

    С нами с:
    11 дек 2009
    Сообщения:
    74
    Симпатии:
    0
    Помогите, пожалуйста, или подскажите что именно искать, чтобы реализовать следующее:

    Есть код:

    PHP:
    1. $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")."
    2.        FROM (".IMAGES_TABLE." i,  ".CATEGORIES_TABLE." c)
    3.        LEFT JOIN ".USERS_TABLE." u ON (".get_user_table_field("u.", "user_id")." = i.user_id)
    4.        WHERE c.cat_id = i.cat_id AND i.image_active = 1 AND (i.cat_id NOT IN (".get_auth_cat_sql("auth_viewimage", "NOTIN").", ".get_auth_cat_sql("auth_viewcat", "NOTIN")."))
    5.        ORDER BY i.image_date_lastview DESC
    6.        LIMIT 12";
    7.        
    8. $result = $site_db->query($sql);
    9. $num_rows = $site_db->get_numrows($result);
    10.  
    11. if (!$num_rows)  {
    12.  
    13.   $last_viewed_images = "<table width=\"".$config['image_table_width']."\" border=\"0\" cellpadding=\"".$config['image_table_cellpadding']."\" cellspacing=\"".$config['image_table_cellspacing']."\"><tr class=\"imagerow1\"><td>";
    14.   $last_viewed_images .= $lang['no_lastviewed_images'];
    15.   $last_viewed_images .= "</td></tr></table>";
    16. }
    17. else {
    18.  
    19.   $last_viewed_images = "<table width=\"".$config['image_table_width']."\" border=\"0\" cellpadding=\"".$config['image_table_cellpadding']."\" cellspacing=\"".$config['image_table_cellspacing']."\">";
    20.   $count = 0;
    21.   $bgcounter = 0;
    22.   while ($image_row = $site_db->fetch_array($result)){
    23.     if ($count == 0) {
    24.       $row_bg_number = ($bgcounter++ % 2 == 0) ? 1 : 2;
    25.       $last_viewed_images .= "<tr>\n";      
    26.     }
    27.    
    28.     $last_viewed_images .= "<td width=\"75\">\n";
    29.  
    30.     show_image($image_row);
    31.    
    32.     $last_viewed_images .= $site_template->parse_template("most_rated_bit");
    33.     $last_viewed_images .= "\n</td>\n";
    34.     $count++;
    35.     if ($count == 4) {
    36.       $last_viewed_images .= "</tr>\n";
    37.       $count = 0;
    38.     }
    39.     unset ($admin_links);
    40.   } // end while
    41.  
    42.   if ($count > 0)  {
    43.     $leftover = (4 - $count);
    44.     if ($leftover >= 1) {
    45.       for ($f = 0; $f < $leftover; $f++) {          
    46.         $last_viewed_images .= "<td width=\"".$imgtable_width."\">\n&nbsp;\n</td>\n";
    47.       }
    48.       $last_viewed_images .= "</tr>\n";
    49.     }
    50.   }
    51.   $last_viewed_images .= "</table>\n";
    52. } // end else
    53.  
    54. $site_template->register_vars("last_viewed_images", $last_viewed_images);
    55. unset($last_viewed_images);
    Выводит превьюшки, последних просмотренных фото, по дате... Необходимо сделать обновление превьюшек в реальном времени, без перезагрузки страницы. Что-то вроде листинга. Так как не программист, не знаю что делать и с чего начать? Направьте в нужное русло, пожалуйста. И тяжело ли это реализовать?

    Благодарю!