Why Not Опубликовано 10 августа, 2015 Жалоба Поделиться Опубликовано 10 августа, 2015 Привет всем! Не нашел здесь этого маленького мода "вывод последних фото в профиле" Решил добавить. Только есть одно НО! Ребят, подскажите код чистки кэша для этого модуля. А то здесь получается что когда добавляешь или удаляешь какую нибудь фотографию из альбома, а в выводе она не обновляется автоматически. Вся проблема с кэшем как я понял. После чистки папки кэша все нормально выводится. Надеюсь вы меня поняли) И так, начнем. 1.Заходим в system/modules/profile.php Находим: //Семейное положение И выше вставляем: //Последние фотографии вывод if($sql_albums){ $sql_photos = $db->super_query("SELECT id,album_id,user_id,photo_name FROM `".PREFIX."_photos` WHERE user_id='{$id}' ORDER BY id DESC LIMIT 8",1, "user_{$id}/photos"); foreach($sql_photos as $rows){ $photos .= ' <a onclick="Photo.Show(this.href); return false" href="/photo'.$rows['user_id'].'_'.$rows['id'].'_'.$rows['album_id'].'"> <img src="/uploads/users/'.$rows['user_id'].'/albums/'.$rows['album_id'].'/c_'.$rows['photo_name'].'" width="100" style="float:left"> </a> '; } $tpl->set('[phet]', ''); $tpl->set('[/phet]', ''); $tpl->set('{five-photo}',$photos); }else{ $tpl->set_block("'\\[phet\\](.*?)\\[/phet\\]'si",""); } 2.Потом в profile.tpl в вашем шаблоне после обложки: [not-owner][cover]<div class="cover_all_user"><img src="{cover}" width="800" id="cover_img" {cover-param-5} /></div>[/cover][/not-owner] Вставляем вот это: [phet] <div style=";margin-right:-15px">{five-photo}</div> [/phet] ---------------- Здесь я сделал вывод последних 8 фоток в ширину 100px, кому надо правьте под себя. Делалось на vii 2.0 1 Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Why Not Опубликовано 10 августа, 2015 Автор Жалоба Поделиться Опубликовано 10 августа, 2015 Проблема решена. Выкладываю ниже второй вариант Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Why Not Опубликовано 10 августа, 2015 Автор Жалоба Поделиться Опубликовано 10 августа, 2015 Второй вариант. 1. В system/modules/profile.php найти: //Семейное положение И выше вставить: $photo_cnt = $db->super_query("SELECT COUNT(*) AS cnt FROM `".PREFIX."_photos` WHERE user_id = '{$id}' ", false);if ($photo_cnt['cnt']) {$sql_photos_view = $db->super_query("SELECT * FROM `".PREFIX."_photos` WHERE user_id = '{$id}' ORDER BY id DESC LIMIT 5",1);if($sql_photos_view) {foreach($sql_photos_view as $row_view_photos) {$photos_view_albums .= "<a onclick=\"Photo.Show(this.href); return false\" href=\"/photo{$row_view_photos['user_id']}_{$row_view_photos['id']}_{$row_view_photos['album_id']}\"><img style=\"margin-left:2px;\" src=\"/uploads/users/{$row_view_photos['user_id']}/albums/{$row_view_photos['album_id']}/c_{$row_view_photos['photo_name']}\" width=\"103\" ></a>";}} else {$photos_view_albums = '<br><div class="info_center">Нет загруженных фотографий.</div>';}$tpl->set('{photos_view_albums}', $photos_view_albums);$tpl->set('[photos]', '');$tpl->set('[/photos]', '');$tpl->set('{photos_num}', $photo_cnt['cnt'].' '.gram_record($row['photos_num'], 'photos_num'));} else {$tpl->set_block("'\\[photos\\](.*?)\\[/photos\\]'si",""); } 2. В templates/Default/profile.tpl найти: [audios]<div id="jquery_jplayer"></div><a href="audio{user-id}" onClick="Page.Go(this.href); return false"><div class="albtitle" style="margin-top:5px">{audios-num}<b id="gramTextAudios"></b><div class="mono_ico_audios" onmouseover="myhtml.title('8', 'Показать все аудиозаписи', 'newBBlockl')" id="newBBlockl8"></div></div>{audios}<div class="clear"></div></a>[/audios] И выше вставить: [photos]<a href="/albums/{user-id}" style="text-decoration:none" onclick="Page.Go(this.href); return false"><div class="albtitle" style="margin-top:5px">Фотографии<div class="mono_ico_albums" onMouseOver="myhtml.title('7', 'Показать все альбомы', 'newBBlockl')" id="newBBlockl7"></div> <span style="color: rgb(201, 201, 201);">{photos_num}</span></div></a><div class="" style="margin-top:5px;">{photos_view_albums}</div>[/photos] Что бы изменить количество последних фотографий, достаточно заменить 5 на необходимое число в DESC LIMIT 5",1 Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Why Not Опубликовано 10 августа, 2015 Автор Жалоба Поделиться Опубликовано 10 августа, 2015 Только в этом варианте не работают теги [photos] [/photos] Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
GreenMonster Опубликовано 10 августа, 2015 Жалоба Поделиться Опубликовано 10 августа, 2015 Лол, уже второй раз воруете эти не рабочие коды последних фоток с того форума. Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Why Not Опубликовано 10 августа, 2015 Автор Жалоба Поделиться Опубликовано 10 августа, 2015 Лол, уже второй раз воруете эти не рабочие коды последних фоток с того форума. Почему же нерабочие? Недопиленные да Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
GreenMonster Опубликовано 10 августа, 2015 Жалоба Поделиться Опубликовано 10 августа, 2015 Почему же нерабочие? Недопиленные да А там, откуда ты это взял - я в комментах подробно описал проблему. Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
AdVest Опубликовано 10 августа, 2015 Жалоба Поделиться Опубликовано 10 августа, 2015 Че то много лишнего кода... Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
viiprogrammer Опубликовано 11 августа, 2015 Жалоба Поделиться Опубликовано 11 августа, 2015 Привет всем! Не нашел здесь этого маленького мода "вывод последних фото в профиле" Решил добавить. Только есть одно НО! Ребят, подскажите код чистки кэша для этого модуля. А то здесь получается что когда добавляешь или удаляешь какую нибудь фотографию из альбома, а в выводе она не обновляется автоматически. Вся проблема с кэшем как я понял. После чистки папки кэша все нормально выводится. Надеюсь вы меня поняли) И так, начнем. 1.Заходим в system/modules/profile.php Находим: //Семейное положение И выше вставляем: //Последние фотографии вывод if($sql_albums){ $sql_photos = $db->super_query("SELECT id,album_id,user_id,photo_name FROM `".PREFIX."_photos` WHERE user_id='{$id}' ORDER BY id DESC LIMIT 8",1, "user_{$id}/photos"); foreach($sql_photos as $rows){ $photos .= ' <a onclick="Photo.Show(this.href); return false" href="/photo'.$rows['user_id'].'_'.$rows['id'].'_'.$rows['album_id'].'"> <img src="/uploads/users/'.$rows['user_id'].'/albums/'.$rows['album_id'].'/c_'.$rows['photo_name'].'" width="100" style="float:left"> </a> '; } $tpl->set('[phet]', ''); $tpl->set('[/phet]', ''); $tpl->set('{five-photo}',$photos); }else{ $tpl->set_block("'\\[phet\\](.*?)\\[/phet\\]'si",""); } 2.Потом в profile.tpl в вашем шаблоне после обложки: [not-owner][cover]<div class="cover_all_user"><img src="{cover}" width="800" id="cover_img" {cover-param-5} /></div>[/cover][/not-owner] Вставляем вот это: [phet] <div style=";margin-right:-15px">{five-photo}</div> [/phet] ---------------- Здесь я сделал вывод последних 8 фоток в ширину 100px, кому надо правьте под себя. Делалось на vii 2.0 То что с кешем, используйте его меньше будет нагрузка, а что бы чистилось делайте так в albums.php найдите: //Обновляем количество комментов у альбома $db->query("UPDATE `".PREFIX."_albums` SET photo_num = photo_num-1, comm_num = comm_num-{$row['comm_num']} {$set_cover} WHERE aid = '{$row['album_id']}'"); //Чистим кеш mozg_mass_clear_cache_file("user_{$user_info['user_id']}/albums|user_{$user_info['user_id']}/albums_all|user_{$user_info['user_id']}/albums_friends|user_{$row['user_id']}/position_photos_album_{$row['album_id']}"); и замените на //Обновляем количество комментов у альбома $db->query("UPDATE `".PREFIX."_albums` SET photo_num = photo_num-1, comm_num = comm_num-{$row['comm_num']} {$set_cover} WHERE aid = '{$row['album_id']}'"); //Чистим кеш mozg_mass_clear_cache_file("user_{$user_info['user_id']}/albums|user_{$user_info['user_id']}/albums_all|user_{$user_info['user_id']}/albums_friends|user_{$row['user_id']}/position_photos_album_{$row['album_id']}|user_{$row['user_id']}/photos"); если че отпишитесь Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Why Not Опубликовано 12 августа, 2015 Автор Жалоба Поделиться Опубликовано 12 августа, 2015 а с тегами то что во втором варианте? Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
viiprogrammer Опубликовано 12 августа, 2015 Жалоба Поделиться Опубликовано 12 августа, 2015 а с тегами то что во втором варианте? Вроде должны работать Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Why Not Опубликовано 12 августа, 2015 Автор Жалоба Поделиться Опубликовано 12 августа, 2015 (изменено) Вроде должны работать Ничего не изменилось) Смотри, если у человека нет альбомов, соответственно нет и фоток (картинок), то теги показываются вот так: [/photos] {photos_view_albums} [/photos] Изменено 12 августа, 2015 пользователем gundzha Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
viiprogrammer Опубликовано 12 августа, 2015 Жалоба Поделиться Опубликовано 12 августа, 2015 Ничего не изменилось) Смотри, если у человека нет альбомов, соответственно нет и фоток (картинок), то теги показываются вот так: [/photos] {photos_view_albums} [/photos] Тип в место блока это? Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
viiprogrammer Опубликовано 12 августа, 2015 Жалоба Поделиться Опубликовано 12 августа, 2015 Ничего не изменилось) Смотри, если у человека нет альбомов, соответственно нет и фоток (картинок), то теги показываются вот так: [/photos] {photos_view_albums} [/photos] ппц программисты почему в 2-х тегах слэш? Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
viiprogrammer Опубликовано 12 августа, 2015 Жалоба Поделиться Опубликовано 12 августа, 2015 Давай я сегодня как приду выложу 101%(у меня рабочий ,у вас много не работает хз почему) рабочую такую фичу прямо в этой теме Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
viiprogrammer Опубликовано 12 августа, 2015 Жалоба Поделиться Опубликовано 12 августа, 2015 Должен работать $photo_cnt = $db->super_query("SELECT COUNT(*) AS cnt FROM `".PREFIX."_photos` WHERE user_id = '{$id}' ", false); if ($photo_cnt['cnt']){ $sql_photos_view = $db->super_query("SELECT * FROM `".PREFIX."_photos` WHERE user_id = '{$id}' ORDER BY id DESC LIMIT 6",1); if($sql_photos_view){ foreach($sql_photos_view as $row_view_photos) { $photos_view_albums .= "<a onclick=\"Photo.Show(this.href); return false\" href=\"/photo{$row_view_photos['user_id']}_{$row_view_photos['id']}_{$row_view_photos['album_id']}\"><img style=\"margin-left:1.5px;height: 75px;margin-top: 5px;\" src=\"/uploads/users/{$row_view_photos['user_id']}/albums/{$row_view_photos['album_id']}/c_{$row_view_photos['photo_name']}\" width=\"92\" ></a>"; } } else { $photos_view_albums = '<br><div class="info_center">Нет загруженных фотографий.</div>'; } $tpl->set('{photos_view_albums}', $photos_view_albums); $tpl->set('[photos]', ''); $tpl->set('[/photos]', ''); $tpl->set('{photos_num}', $photo_cnt['cnt']); }else $tpl->set_block("'\\[photos\\](.*?)\\[/photos\\]'si",""); Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
GreenMonster Опубликовано 12 августа, 2015 Жалоба Поделиться Опубликовано 12 августа, 2015 Должен работать $photo_cnt = $db->super_query("SELECT COUNT(*) AS cnt FROM `".PREFIX."_photos` WHERE user_id = '{$id}' ", false); if ($photo_cnt['cnt']){ $sql_photos_view = $db->super_query("SELECT * FROM `".PREFIX."_photos` WHERE user_id = '{$id}' ORDER BY id DESC LIMIT 6",1); if($sql_photos_view){ foreach($sql_photos_view as $row_view_photos) { $photos_view_albums .= "<a onclick=\"Photo.Show(this.href); return false\" href=\"/photo{$row_view_photos['user_id']}_{$row_view_photos['id']}_{$row_view_photos['album_id']}\"><img style=\"margin-left:1.5px;height: 75px;margin-top: 5px;\" src=\"/uploads/users/{$row_view_photos['user_id']}/albums/{$row_view_photos['album_id']}/c_{$row_view_photos['photo_name']}\" width=\"92\" ></a>"; } } else { $photos_view_albums = '<br><div class="info_center">Нет загруженных фотографий.</div>'; } $tpl->set('{photos_view_albums}', $photos_view_albums); $tpl->set('[photos]', ''); $tpl->set('[/photos]', ''); $tpl->set('{photos_num}', $photo_cnt['cnt']); }else $tpl->set_block("'\\[photos\\](.*?)\\[/photos\\]'si",""); А то, что в .тпл пихать? Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
viiprogrammer Опубликовано 12 августа, 2015 Жалоба Поделиться Опубликовано 12 августа, 2015 А то, что в .тпл пихать? [photos] {photos_view_albums} [/photos] 1 Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Why Not Опубликовано 14 августа, 2015 Автор Жалоба Поделиться Опубликовано 14 августа, 2015 Должен работать $photo_cnt = $db->super_query("SELECT COUNT(*) AS cnt FROM `".PREFIX."_photos` WHERE user_id = '{$id}' ", false); if ($photo_cnt['cnt']){ $sql_photos_view = $db->super_query("SELECT * FROM `".PREFIX."_photos` WHERE user_id = '{$id}' ORDER BY id DESC LIMIT 6",1); if($sql_photos_view){ foreach($sql_photos_view as $row_view_photos) { $photos_view_albums .= "<a onclick=\"Photo.Show(this.href); return false\" href=\"/photo{$row_view_photos['user_id']}_{$row_view_photos['id']}_{$row_view_photos['album_id']}\"><img style=\"margin-left:1.5px;height: 75px;margin-top: 5px;\" src=\"/uploads/users/{$row_view_photos['user_id']}/albums/{$row_view_photos['album_id']}/c_{$row_view_photos['photo_name']}\" width=\"92\" ></a>"; } } else { $photos_view_albums = '<br><div class="info_center">Нет загруженных фотографий.</div>'; } $tpl->set('{photos_view_albums}', $photos_view_albums); $tpl->set('[photos]', ''); $tpl->set('[/photos]', ''); $tpl->set('{photos_num}', $photo_cnt['cnt']); }else $tpl->set_block("'\\[photos\\](.*?)\\[/photos\\]'si",""); Хм, все равно не помогло, теги показываются Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
viiprogrammer Опубликовано 14 августа, 2015 Жалоба Поделиться Опубликовано 14 августа, 2015 Должен работать $photo_cnt = $db->super_query("SELECT COUNT(*) AS cnt FROM `".PREFIX."_photos` WHERE user_id = '{$id}' ", false); if ($photo_cnt['cnt']){ $sql_photos_view = $db->super_query("SELECT * FROM `".PREFIX."_photos` WHERE user_id = '{$id}' ORDER BY id DESC LIMIT 6",1); if($sql_photos_view){ foreach($sql_photos_view as $row_view_photos) { $photos_view_albums .= "<a onclick=\"Photo.Show(this.href); return false\" href=\"/photo{$row_view_photos['user_id']}_{$row_view_photos['id']}_{$row_view_photos['album_id']}\"><img style=\"margin-left:1.5px;height: 75px;margin-top: 5px;\" src=\"/uploads/users/{$row_view_photos['user_id']}/albums/{$row_view_photos['album_id']}/c_{$row_view_photos['photo_name']}\" width=\"92\" ></a>"; } } else { $photos_view_albums = '<br><div class="info_center">Нет загруженных фотографий.</div>'; } $tpl->set('{photos_view_albums}', $photos_view_albums); $tpl->set('[photos]', ''); $tpl->set('[/photos]', ''); $tpl->set('{photos_num}', $photo_cnt['cnt']); }else $tpl->set_block("'\\[photos\\](.*?)\\[/photos\\]'si",""); Хм, все равно не помогло, теги показываются У меня норм эт у вас где-то ошибки (понял по проблемам в привядущих темах) Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Why Not Опубликовано 14 августа, 2015 Автор Жалоба Поделиться Опубликовано 14 августа, 2015 У меня норм эт у вас где-то ошибки (понял по проблемам в привядущих темах) Может скинуть php файл? Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Why Not Опубликовано 18 августа, 2015 Автор Жалоба Поделиться Опубликовано 18 августа, 2015 (изменено) ахахах да все нормально посоны второй варик как раз таки и рабочий, просто реально не заметил такую фигню как лишний слеш сам в акуе Изменено 18 августа, 2015 пользователем gundzha 1 Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Dusty Опубликовано 8 марта, 2020 Жалоба Поделиться Опубликовано 8 марта, 2020 ау программеры хреновы, дайте норм инструкцию Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
xuyasdas324524 Опубликовано 9 марта, 2020 Жалоба Поделиться Опубликовано 9 марта, 2020 15 часов назад, artem201920191 сказал: ау программеры хреновы, дайте норм инструкцию согласен ничерта не понятно Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Рекомендуемые сообщения
Присоединяйтесь к обсуждению
Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.
Примечание: Ваш пост будет проверен модератором, прежде чем станет видимым.