|
Форум -> Полезные решения -> Набор блоков для SLAED | Набор блоков для SLAED |
---|
alfainfo | Дата: 31.12.2007, в 12:03 | Сообщение №1 |   Активный участникПользователь №: 237 Сообщений: 152
 | Всех с новым годом!!! нашел в запаснике у себя блок который в свое время писал для меня Сергей, и решил сделать маленький подарок выложить его и подобные ему клоны которые у меня накопились думаю кому неть пригодятся...
И надеюсь моему примеру последуют другие. 
и так блок номер рас - Центральный блок ФАЙЛЫ в две колонки выводит 10 новых и десять самых скачиваемых файлов ЗА 30 ДНЕЙ
PHP - Код | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68
| <?php if (!defined('BLOCK_FILE')) { Header("Location: ../index.php"); exit; }
global $prefix, $db; $number = 10; //Количество позиций в списке $strip = 36; //количество знаков в названии после чего будет обрезано ( 36 - оптимально, на мой взгляд, для удвублочных сайтов под разрешение 1024*768)
$content .= " <table width=\"100%\" border=\"0\" cellpadding=\"2\" cellspacing=\"1\" class=\"bgcolor4\"> <tr> <th width=\"50%\" height=\"20\" align=\"left\"><font class=\"block-title\"> Новые файлы</font></th> <th width=\"50%\" height=\"20\" align=\"left\"><font class=\"block-title\"> Самые скачиваемые файлы</font></th> </tr> <tr class=\"bgcolor1\"> <td valign=\"top\"> <table cellspacing=\"0\" cellpadding=\"1\" border=\"0\">"; // Новые файлы на сайте $a = 1; $content .= "<td valign=\"top\">"; $result = $db->sql_query("SELECT lid, title, hits FROM ".$prefix."_files WHERE status !='0' ORDER BY lid DESC LIMIT $number"); while(list($lid, $title, $hits) = $db->sql_fetchrow($result)) { $linkstrip = stripslashes($title); if (strlen($linkstrip) > $strip) { $linkstrip = substr($linkstrip, 0, $strip); $linkstrip .= "..."; } $down = cutstr($hits,5); $content .= "<tr><td align=\"right\" valign=\"top\">$a </td><td><a href=\"index.php?name=Files&op=view_file&lid=$lid\" title=\"$title\">$linkstrip</a> <a href=\"#\" title=\"Скачали $down раз\"><small>($down)</small></a></td></tr>"; $a++; }
// Популярные файлы на сайте (ротация по скачиваниям (хитам)) $content .= " </table> </td> <td valign=\"top\"> <table cellspacing=\"0\" cellpadding=\"1\" border=\"0\">"; $a = 1; $time_metka1 = 60*60*24*30; $result = $db->sql_query("SELECT lid, title, hits FROM ".$prefix."_files WHERE (UNIX_TIMESTAMP(now())-UNIX_TIMESTAMP(date)) < ".$time_metka1." AND status != '0' AND date <= NOW() ORDER BY hits DESC LIMIT $number"); while ($row = $db->sql_fetchrow($result)) { $f_id = intval($row['lid']); $title_f = stripslashes($row['title']); $title_file = cutstr($title_f,$strip); $down = cutstr($row['hits'],5); $content .= "<tr><td align=\"right\" valign=\"top\">$a </td><td><a href=\"index.php?name=Files&op=view_file&lid=$f_id\" title=\"$title_f\">$title_file</a> <a href=\"#\" title=\"Скачали $down раз\"><small>($down)</small></a></td></tr>"; $a++; }
$content .= "</table> </td> </tr> <tr> <td class=\"bgcolor1\">";
$sumfiles = $db->sql_numrows($db->sql_query("SELECT lid FROM ".$prefix."_files WHERE status !='0' ")); list ($sumprosm) = $db->sql_fetchrow($db->sql_query("SELECT sum(hits) as kolvo FROM ".$prefix."_files WHERE (UNIX_TIMESTAMP(now())-UNIX_TIMESTAMP(date)) < ".$time_metka1." AND status != '0' AND date <= NOW() "));
$content .= "Всего файлов: $sumfiles</td><td class=\"bgcolor1\"> Всего было скачано: $sumprosm раз(а) </td> </tr> </table>"; ?> |
Сам блок легко переделывается под другие модули (например у меня он выводит инфу для 3!!! разных модулей!)
так же ограничение в 30 дней можно легко изменить или удолить вовсе!
------------------------------------------------------------
центральный блок для АЛЬБОМА - ВЫВОДИТ СПИСОК ФАЙЛОВ ТОЛЬКО ИЗ ОДНОЙ КАТЕГОРИИ а не из всего модуля!
PHP - Код | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63
| <?php if (!defined('BLOCK_FILE')) { Header("Location: ../index.php"); exit; }
/* © Serg_pnz, 2007 e-mail: print58@yandex.ru www.ponedelnikov.net */
global $prefix, $db;
// начало настроек //-----------------------------------------------------------
// символов для обрезания названия $strip = 3;
// номер категории $galloc = 2;
// количество колонок $kolonok = 7;
//----------------------------------------------------------- // конец настроек
// открываем таблицу $content .= "<table cellspacing=\"0\" cellpadding=\"1\" border=\"1\"><tr><td valign=\"top\">"; $i=1;
// определяем количество картинок в этой категории $summa = $db->sql_numrows($db->sql_query("SELECT pid FROM ".$prefix."_album_pictures WHERE gid=$galloc"));
$result = $db->sql_query("SELECT pid, gid, name FROM ".$prefix."_album_pictures WHERE gid=$galloc ORDER BY pid DESC "); while(list($pid, $gid, $name) = $db->sql_fetchrow($result)) { // обрезаем выводимое имя картинки $linkstrip = cutstr($name, $strip);
// выводим иконку, ссылку на картинку $content .= "<img src=\"images/blocks/Album.gif\" align=\"middle\" title=\"$name\"><a href=\"index.php?name=Album&do=showpic&pid=$pid\" title=\"$name\">$linkstrip</a>"; // блок с условием, что бы выводилось всё ровно и нарядно if ( $i == ceil($summa/$kolonok) AND $kolonok > 1 ) { $content .= "</td><td valign=\"top\">"; $summa = $summa - $i; $kolonok--; $i=1; } else { $content .= " $i++; }
}
//закрываем таблицу $content .= "</td></tr></table>";
?> |
------------------------------------------------------------------
а вот блок который я получил путем селективного скрещивания этих двух блоков
- Центральный блок для АЛЬБОМА - выводит в заданное кол во колонок , заданное кол во файлов (картинок из альбома) ранжируя (упорядочевая) по кол ву просмотров:
PHP - Код | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55
| <?php if (!defined('BLOCK_FILE')) { Header("Location: ../index.php"); exit; }
global $prefix, $db;
// начало настроек //-----------------------------------------------------------
// символов для обрезания названия $strip = 20;
// Кол-во выводимых картинок $summa = 30;
// количество колонок $kolonok = 3;
//----------------------------------------------------------- // конец настроек
// открываем таблицу $content .= "<table width=\"100%\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\" class=\"bgcolor4\"><tr><td><table width=\"100%\" border=\"0\" cellspacing=\"1\" cellpadding=\"2\"><tr><th colspan=\"$kolonok\" class=\"titleline\">TOP FLASH</th></tr><tr><td valign=\"top\" class=\"bgcolor1\">"; $i=1;
$result = $db->sql_query("SELECT pid, gid, name, counter FROM ".$prefix."_album_pictures ORDER BY counter DESC LIMIT $summa"); while(list($pid, $gid, $name, $count) = $db->sql_fetchrow($result)) { // обрезаем выводимое имя картинки $linkstrip = cutstr($name, $strip);
// выводим иконку, ссылку на картинку $content .= "<img src=\"images/blocks/flashgames.gif\" align=\"middle\" title=\"$name\"> <a href=\"index.php?name=Album&do=showpic&pid=$pid\" title=\"$name\">$linkstrip ($count раз)</a>"; // блок с условием, что бы выводилось всё ровно и нарядно if ( $i == ceil($summa/$kolonok) AND $kolonok > 1 ) { $content .= "</td><td valign=\"top\" class=\"bgcolor1\">"; $summa = $summa - $i; $kolonok--; $i=1; } else { $content .= " $i++; }
}
//закрываем таблицу $content .= "</td></tr></table></td></tr></table>";
?> |
- ЮЗАЙТЕ НА ЗДОРОВЬЕ В НОВОМ ГОДУ!
P.S
Все блоки можно посмотреть в работе у меня на сайте в соответствующих модулях (банер в низу каждого поста...) |
| | Club-Ua | Дата: 31.12.2007, в 12:23 | Сообщение №2 |   СтарожилПользователь №: 163 Сообщений: 274
 | Спасибо большое)) первий буду юзать))
С наступающим всех!!!!!! |
| | RockKenny | Дата: 31.12.2007, в 17:46 | Сообщение №3 |   Активный участникПользователь №: 171 Сообщений: 232
 | | | | Вы не можете ответить в тему анонимно, пожалуйста, войдите или зарегистрируйтесь!
|
|
|
|