Xwab
Форумыnavigate_nextНебольшие вопросы по PHP/MySQL

не сохраняет лимит пользователей. подскажите
Сообщения
Vitrum

вот небольшой модуль гости. когда указываю в коде лимит на вывод 3 гостей всеравно помаксимуму показывает. почему не сохраняет изменения. подправте кто не будь пожалуйста век не забуду
добавлено спустя 1 минуту:
почему то мне кажется здесь ошибка
<b>//################### Гости ###################//
if($row['see_guests']){
$guests_arr = array_unique(explode('|',$row['see_guests']));
foreach($guests_arr as $guest_id) {

$tpl->load_template('profile_friends.tpl');
$sql_guests = $db->super_query("SELECT SQL_CALC_FOUND_ROWS user_id, user_country_city_name, user_search_pref, user_birthday, user_photo FROM `".PREFIX."_users` WHERE user_id = '{$guest_id}' ORDER by rand() DESC LIMIT 0, 6", 1);
$tpl->load_template('profile_friends.tpl');
foreach($sql_guests as $row_guests){
$friend_info_online = explode(' ', $row_guests['user_search_pref']);
$tpl->set('{user-id}', $row_guests['user_id']);
$tpl->set('{name}', $friend_info_online[0]);
$tpl->set('{last-name}', $friend_info_online[1]);
if($row_guests['user_photo'])
$tpl->set('{ava}', $config['home_url'].'uploads/users/'.$row_guests['user_id'].'/50_'.$row_guests['user_photo']);
else
$tpl->set('{ava}', '{theme}/images/no_ava_50.png');
$tpl->compile('all_guests_friends');
}

}
}
</b>

06 Фев 2013, 13:54
SL_NeKrOmAnT

Попробуй просто LIMIT 3

06 Фев 2013, 20:04
Vitrum

вот реадми

работающий мод "мои гости" или "кто смотрел"

Необходимо сделать следующее:

Делаем SQL запрос в PHPmyADMIN
ALTER TABLE `vii_users` ADD `see_guests` text

Открыть файл: ./system/modules/profile.php

Найти:
$row = $db->super_query("SELECT user_id, user_search_pref, user_country_city_name, user_birthday, user_xfields, user_xfields_all, user_city, user_country, user_group, user_photo, user_friends_num, user_notes_num, user_subscriptions_num, user_wall_num, user_albums_num, user_last_visit, user_videos_num, user_status, user_privacy, user_sp, user_sex, user_gifts, user_public_num, user_audio, user_delet, user_ban_date, xfields, user_doc_num FROM `".PREFIX."_users` WHERE user_id = '{$id}'");

Заменить на:
$row = $db->super_query("SELECT user_id, user_search_pref, user_country_city_name, user_birthday, user_xfields, user_xfields_all, user_city, user_country, user_group, user_photo, user_friends_num, user_notes_num, user_subscriptions_num, user_wall_num, user_albums_num, user_last_visit, user_videos_num, user_status, user_privacy, user_sp, user_sex, user_gifts, user_public_num, user_audio, user_delet, user_ban_date, xfields, user_doc_num, see_guests FROM `".PREFIX."_users` WHERE user_id = '{$id}'");

Найти:
//Если есть такой, юзер то продолжаем выполнение скрипта
if($row){

Ниже добавить:
$row_guests = $db->super_query("SELECT user_privacy FROM `".PREFIX."_users` WHERE user_id = '{$user_id}'");
$guests_privacy = xfieldsdataload($row_guests['user_privacy']);
// Проверка настроек приватности пользователя
if($user_id != $id AND $guests['val_guests2'] != 3)
{
$db->query("UPDATE LOW_PRIORITY `".PREFIX."_users` SET see_guests = '{$row['see_guests']}|{$user_id}|' WHERE user_id = '{$id}'");
mozg_clear_cache_file('user_'.$id.'/profile_'.$id);
mozg_clear_cache();
}

Найти:
//################### Друзья на сайте ###################//

ВЫШЕ добавить:
//################### Гости ###################//
if($row['see_guests']){
$guests_arr = array_unique(explode('|',$row['see_guests']));
foreach($guests_arr as $guest_id) {

$tpl->load_template('profile_friends.tpl');
$sql_guests = $db->super_query("SELECT SQL_CALC_FOUND_ROWS user_id, user_country_city_name, user_search_pref, user_birthday, user_photo FROM `".PREFIX."_users` WHERE user_id = '{$guest_id}' ORDER by rand() DESC LIMIT 0, 6", 1);
$tpl->load_template('profile_friends.tpl');
foreach($sql_guests as $row_guests){
$friend_info_online = explode(' ', $row_guests['user_search_pref']);
$tpl->set('{user-id}', $row_guests['user_id']);
$tpl->set('{name}', $friend_info_online[0]);
$tpl->set('{last-name}', $friend_info_online[1]);
if($row_guests['user_photo'])
$tpl->set('{ava}', $config['home_url'].'uploads/users/'.$row_guests['user_id'].'/50_'.$row_guests['user_photo']);
else
$tpl->set('{ava}', '{theme}/images/no_ava_50.png');
$tpl->compile('all_guests_friends');
}

}
}

Найти:
$tpl->set('{friends-num}', $row['user_friends_num']);

ВЫШЕ добавить:
$tpl->set('{gram-name}', gramatikName($author_info[0]));

$guests_num = count(array_unique(explode('|',$row['see_guests']))) - 1;
$tpl->set('{guests-num}', $guests_num);

Найти:
//Кол-во подписок и Если есть друзья, то выводим

ВЫШЕ добавить:
//Если есть гости, то выводим
if($guests_num){
$tpl->set('[guests]', '');
$tpl->set('[/guests]', '');
$tpl->set('{guests}', $tpl->result['all_guests_friends']);
} else
$tpl->set_block("'\\[guests\\](.*?)\\[/guests\\]'si","");

Найти:
//Cover
$rrw = $db->super_query("SELECT user_cover, user_cover_pos FROM `".PREFIX."_users` WHERE user_id = '{$id}'");

ВЫШЕ добавить:
//Приватность гости
if($user_privacy['val_guests1'] == 1 OR $user_privacy['val_guests1'] == 2 AND $check_friend OR $user_id == $id){
$tpl->set('[privacy-guests]', '');
$tpl->set('[/privacy-guests]', '');
} else
$tpl->set_block("'\\[privacy-guests\\](.*?)\\[/privacy-guests\\]'si","");



далее...
Открыть файл: ./templates/Default/profile.tpl

Найти:
[friends]<div class="albtitle">Друзья <span>{friends-num}</span><div><a href="/friends/{user-id}" onClick="Page.Go(this.href); return false"><div class="mono_ico" onmouseover="myhtml.title('1', 'Показать всех друзей', 'newBBlockl')" id="newBBlockl1"></div></a></div></div>
<div class="newmesnobg" style="padding:0px;padding-top:10px;">{friends}<div class="clear"></div>
</div>[/friends]

ВЫШЕ добавить:

[privacy-guests]
[guests]<div class="albtitle">Гости <span>{guests-num}</span><div><a href="/guests/{user-id}" onClick="Page.Go(this.href); return false"><div class="mono_ico" onmouseover="myhtml.title('1', 'Показать всех гостей', 'newBBlockl')" id="newBBlockl1"></div></a></div></div>
<div class="newmesnobg" style="padding:0px;padding-top:10px;">{guests}<div class="clear"></div>
</div>[/guests]
[/privacy-guests]


В файл: ./system/mod.php
Добавить:


PHP код:
// Гости
case "guests" :
include ENGINE_DIR . '/modules/guests.php';
break;


В файл: .htaccess

# Guests
RewriteRule ^guests/clear(/?)+$ index.php?go=guests&amp;act=clear [L]
RewriteRule ^guests(/?)+$ index.php?go=guests [L]
RewriteRule ^guests/([0-9]+)(/?)+$ index.php?go=guests&amp;user_id=$1 [L]
RewriteRule ^guests/([0-9]+)/page/([0-9]+)(/?)+$ index.php?go=guests&amp;user_id=$1&amp;page=$2 [L]

В файле: ./system/modules/register.php

Нужно произвести изменения, чтобы работы настройки приватности.

Находим:
'val_msg|1||val_wall1|1||val_wall2|1||val_wall3|1||val_info|1||')");

Меняем на:
'val_msg|1||val_wall1|1||val_wall2|1||val_wall3|1||val_info|1||val_guests1|1||val_guests2|1||')");

И в PHPmyADMIN выполняем запрос:

UPDATE `vii_users` SET user_privacy = 'val_msg|1||val_wall1|1||val_wall2|1||val_wall3|1||val_info|1||val_guests1|1||val_guests2|1||'

06 Фев 2013, 22:47
TOOZ

Vitrum, КРАСНЫЙ ЦВЕТ для АДМИНИСТРАЦИИ. Его НЕЛЬЗЯ использовать пользователям. Потому что так написано в ПРАВИЛАХ:


http://xwab.mobi/forum/rules


И я ссылку дал чтоб ты ПО НЕЙ ПЕРЕШЕЛ И ПРОЧЕЛ МНОГО РАЗ ЧТО ТАМ НАПИСАНО.

07 Фев 2013, 0:06
Vitrum

TOOZ пишет:
"Vitrum, КРАСНЫЙ ЦВЕТ для АДМИНИСТРАЦИИ. Его НЕЛЬЗЯ использовать пользователям. Потому что так написано в ПРАВИЛАХ:


http://xwab.mobi/forum/rules


И я ссылку дал чтоб ты ПО НЕЙ ПЕРЕШЕЛ И ПРОЧЕЛ МНОГО РАЗ ЧТО ТАМ НАПИСАНО."
во первых если для администрации то зачем общедоступно. во вторых свою картинку засунь себе знаеш куда? если бы я знал я бы не спрашивал. если нечего по теме сказать шла нах. лиш бы нацарапать что то а что пофигу

07 Фев 2013, 20:52
TOOZ

К тебе отнесся мягко и предупредил прилюдно чтоб не повторяли ошибок.

Нечего мне сказать по теме? Я тебе носом ткнул на то где ты виноват, ясно тебе это или нет?
Ты своей байдой красной весь экран загадил, я исправил. Ты еще огрызаешься? Гуляй.
добавлено спустя 1 минуту:
И можешь потом не говорить что я сначала тебя забанил, а потом вопросы задавал не дав тебе ответить - они риторические.

07 Фев 2013, 20:58
Ответить на тему