Jump to content
Sign in to follow this  
Why Not

Выводим последние фотографии

Recommended Posts

Привет всем! 

Не нашел здесь этого маленького мода "вывод последних фото в профиле"

Решил добавить. Только есть одно НО! Ребят, подскажите код чистки кэша для этого модуля. А то здесь получается что когда добавляешь или удаляешь какую нибудь фотографию из альбома, а в выводе она не обновляется автоматически. Вся проблема с кэшем как я понял. После чистки папки кэша все нормально выводится. Надеюсь вы меня поняли)

 

И так, начнем.

 

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
  • Upvote 1

Share this post


Link to post
Share on other sites

Второй вариант.

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

Share this post


Link to post
Share on other sites

Лол, уже второй раз воруете эти не рабочие коды последних фоток с того форума.

Почему же нерабочие? Недопиленные да

Share this post


Link to post
Share on other sites

Почему же нерабочие? Недопиленные да

А там, откуда ты это взял - я в комментах подробно описал проблему.

Share this post


Link to post
Share on other sites

 

Привет всем! 

Не нашел здесь этого маленького мода "вывод последних фото в профиле"

Решил добавить. Только есть одно НО! Ребят, подскажите код чистки кэша для этого модуля. А то здесь получается что когда добавляешь или удаляешь какую нибудь фотографию из альбома, а в выводе она не обновляется автоматически. Вся проблема с кэшем как я понял. После чистки папки кэша все нормально выводится. Надеюсь вы меня поняли)

 

И так, начнем.

 

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");

если че отпишитесь

Share this post


Link to post
Share on other sites

Вроде должны работать

Ничего не изменилось) Смотри, если у человека нет альбомов, соответственно нет и фоток (картинок), то теги показываются вот так: 

[/photos]

{photos_view_albums}

[/photos]

Edited by gundzha

Share this post


Link to post
Share on other sites

Ничего не изменилось) Смотри, если у человека нет альбомов, соответственно нет и фоток (картинок), то теги показываются вот так:

[/photos]

{photos_view_albums}

[/photos]

Тип в место блока это?

Share this post


Link to post
Share on other sites

Ничего не изменилось) Смотри, если у человека нет альбомов, соответственно нет и фоток (картинок), то теги показываются вот так:

[/photos]

{photos_view_albums}

[/photos]

ппц программисты почему в 2-х тегах слэш?

Share this post


Link to post
Share on other sites

Давай я сегодня как приду выложу 101%(у меня рабочий ,у вас много не работает хз почему) рабочую такую фичу прямо в этой теме :)

Share this post


Link to post
Share on other sites

Должен работать

             $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","");

Share this post


Link to post
Share on other sites

 

Должен работать

             $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","");

А то, что в .тпл пихать?

Share this post


Link to post
Share on other sites

 

Должен работать

             $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","");

Хм, все равно не помогло, теги показываются

Share this post


Link to post
Share on other sites

 

 

 

Должен работать

             $photo_cnt = $db-&gt;super_query("SELECT COUNT(*) AS cnt FROM `".PREFIX."_photos` WHERE user_id = '{$id}' ", false);
             if ($photo_cnt['cnt']){
             $sql_photos_view = $db-&gt;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 .= "&lt;a onclick=\"Photo.Show(this.href); return false\" href=\"/photo{$row_view_photos['user_id']}_{$row_view_photos['id']}_{$row_view_photos['album_id']}\"&gt;&lt;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\" &gt;&lt;/a&gt;";
             }
              } else {
              $photos_view_albums = '&lt;br&gt;&lt;div class="info_center"&gt;Нет загруженных фотографий.&lt;/div&gt;';
              }
                $tpl-&gt;set('{photos_view_albums}', $photos_view_albums);
                $tpl-&gt;set('[photos]', '');
             $tpl-&gt;set('[/photos]', '');
              $tpl-&gt;set('{photos_num}', $photo_cnt['cnt']);   
                  }else
             $tpl-&gt;set_block("'\\[photos\\](.*?)\\[/photos\\]'si","");
Хм, все равно не помогло, теги показываются
У меня норм эт у вас где-то ошибки (понял по проблемам в привядущих темах)

Share this post


Link to post
Share on other sites

У меня норм эт у вас где-то ошибки (понял по проблемам в привядущих темах)

Может скинуть php файл?

Share this post


Link to post
Share on other sites

ахахах да все нормально посоны :D  второй варик как раз таки и рабочий, просто реально не заметил такую фигню как лишний слеш :lol:  сам в акуе :rolleyes:

Edited by gundzha
  • Downvote 1

Share this post


Link to post
Share on other sites
15 часов назад, artem201920191 сказал:

ау программеры хреновы, дайте норм инструкцию

согласен ничерта не понятно

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

×