Модератор форума: dotbot  
Сообщество uCoz » Архивариус » Корзина » Условные операторы: скрытие информации (как сделать, чтобы видели только зарегистрированные)
Условные операторы: скрытие информации
Макс6588
Сообщений: 22
Репутация: 7

Сообщение # 46 | 14:38:26
Насколько реально сделать так что если в посте на форуме есть тег hide то оно полностью не видно гостям(без)
YuriT
Сообщений: 231
Репутация: 701
Уровень замечаний:

Сообщение # 47 | 15:22:53
Quote (Макс6588)
Насколько реально сделать так что если в посте на форуме есть тег hide то оно полностью не видно гостям(без)

Имеется в виду, именно с помощью условных операторов?
Сделать можно, но при простой реализации работать это будет ненадежно, поскольку оператор STRPOS, анализирующий текст, просматривает только первые 1000 символов. Так что если сообщение длинное, и hide стоит где-то ближе к концу, то оператор его "не заметит".

Проще это сделать при помощи джаваскрипта, но тогда в исходном коде страницы сообщение будет присутствовать полностью, и при желании его можно будет оттуда извлечь.


Потеряшка - поиск потерянных и помощь бездомным животным в Питере
Сообщение отредактировал YuriT - Вторник, 18 Янв 2011, 15:23:29
Макс6588
Сообщений: 22
Репутация: 7

Сообщение # 48 | 11:43:41
YuriT, а как это сделать при помощи STRPOS? и возможно ли сделать что то типа хайта по постам только без js?
YuriT
Сообщений: 231
Репутация: 701
Уровень замечаний:

Сообщение # 49 | 13:41:21
Quote (Макс6588)
а как это сделать при помощи STRPOS?

Заключить весь шаблон "вид материалов" в условный оператор вида

<?if($USER_LOGGED_IN$ || strpos($MESSAGE$,'<!--BBhide-->')<0)?>
.....
<?endif?>

Quote (Макс6588)
и возможно ли сделать что то типа хайта по постам только без js?

Это не понял.

Потеряшка - поиск потерянных и помощь бездомным животным в Питере
Макс6588
Сообщений: 22
Репутация: 7

Сообщение # 50 | 21:03:39
YuriT, Ну наверно видел в нете скрипт hide по постам пишешь в посте [hide=50]скрытый текст[/hide] 50 это количество постов чтоб увидеть сообщение. Можно что то подобное сделать с условными операторами, только не так что все сообщения скроются если у тебя нет 5 постов например.
YuriT
Сообщений: 231
Репутация: 701
Уровень замечаний:

Сообщение # 51 | 22:03:08
Quote (Макс6588)
Можно что то подобное сделать с условными операторами, только не так что все сообщения скроются если у тебя нет 5 постов например

Условными операторами - нельзя, хотя бы потому, что переменной для числа постов просматривающего форум в шаблонах нету.

Джаваскриптом - в принципе, можно. Хотя это и не совсем тривиально, плюс нужно еще все-таки четко сформулировать, чего же именно хочется.


Потеряшка - поиск потерянных и помощь бездомным животным в Питере
Макс6588
Сообщений: 22
Репутация: 7

Сообщение # 52 | 11:41:21
Quote (YuriT)
плюс нужно еще все-таки четко сформулировать, чего же именно хочется.

Да куда же еще точнее. Скритп делает возможным писать hide=N где N количество постов необходимых для просмотра. Если постов недостаточно, скрипт скрывает всё сообщение и пишет сколько необходимо постов для просмотра. Но у джавы всегда один минус в исходном коде всегда все видно, или еще проще отключить джаву в браузере. http://allcity.net.ru/viewtopic.php?f=3&t=2243
Все равно спасибо за помощь
Splin3971
Сообщений: 17
Репутация: 3

Сообщение # 53 | 04:10:54
Существует ли условие для проверки наличия файла загруженного через файловый менеджер или FTP?

Если ты упал... поднимись, если все не так... изменись, если ставишь цель... достигай, нет предела в твоих силах так и знай...
fflesh
Сообщений: 1784
Репутация: 1314

Сообщение # 54 | 04:19:47
Splin3971,
Quote (Splin3971)
Существует ли условие для проверки наличия файла загруженного через файловый менеджер или FTP?

- Нет.
...

Всё написанное выше - моё личное мнение и на абсолютную правоту не претендует.
Есть вопросы лично ко мне - пиши сюда: http://likbezz.ru/forum/8
Splin3971
Сообщений: 17
Репутация: 3

Сообщение # 55 | 10:58:39
Quote (fflesh)
- Нет.

Я сделал на страницах сайта ссылки на файлы XML(прайсы) для индексации поисковиками, которые также обрабатываются скриптом и выводятся на страницу. Но если скрипт не находит файл он просто не срабатывает и не выводит ничего, то поисковик увидит битую ссылку, а они этого не любят. Не подскажете как быть?

P.S. Как ссылки так и скрипт подставляются в шаблонах. Для соответствия файла странице имя файла состоит из $URI_ID$+".xml"

P.P.S. Может есть возможность использовать гибридные условия типа

Code
<?if(fileExist($URI_ID$+".xml"))?><a href='/$URI_ID$+".xml"'>ссылка на файл</a><?endif?>

Если ты упал... поднимись, если все не так... изменись, если ставишь цель... достигай, нет предела в твоих силах так и знай...
Сообщение отредактировал Splin3971 - Пятница, 18 Фев 2011, 11:04:17
webanet
Сообщений: 24067
Репутация: 4985

Сообщение # 56 | 15:12:07
Splin3971,
Quote
Но если скрипт не находит файл он просто не срабатывает и не выводит ничего, то поисковик увидит битую ссылку,
я вам кажется уже пыталась объяснить один раз, что поисковики не исполняют скрипты и им глубоко наплевать что скрипт нашёл и что вывел в итоге.
для внесения полной ясности проделайте эксперимент. прямо на этой странице нажмите сочетание клавиш ctrl+u
откроется окно с исходником. вот так видят ваш сайт поисковики. вот так как в открывшемся окне. выстраивайте свою стратегию общения с поисковиками именно из этого, то есть ориентируйтесь на исходник
для разнообразия если есть аккаунт в вебмастере гугла, то воспользуйтесь функцией Просмотреть как Googlebot вбейте туда страницу где стоит ваша конструкция и отправьте запрос. это будет максимально наглядно

ТУТ можно оставить своё мнение по любому вопросу
https://webanetlabs.net/
YuriT
Сообщений: 231
Репутация: 701
Уровень замечаний:

Сообщение # 57 | 15:12:33
Splin3971, нет таких проверок. И кроме того:

1. надо писать <a href='/$URI_ID$.xml'> , иначе все Ваши ссылки окажутся битыми независимо от присутствия файла
2. как-то сомнительно, чтобы от доступности этих самых XML-файлов для поисковиков была какая-то польза. Яндекс, к примеру, XML-файлы, на которые идут ссылки со страниц, вообще не обрабатывает (а вместо этого выдает в диагностике ошибку "не поддерживаемый тип данных").
Если хотите, чтобы Ваши данные действительно стали доступны поисковикам - то почитайте в их хэлпах, какие форматы структурированных данных они поддерживают (это микроформат и еще несколько строго определенных форматов данных).


Потеряшка - поиск потерянных и помощь бездомным животным в Питере
Сообщение отредактировал YuriT - Пятница, 18 Фев 2011, 15:15:04
Splin3971
Сообщений: 17
Репутация: 3

Сообщение # 58 | 15:45:14
Quote (webanet)
Quote (Splin3971)
Но если скрипт не находит файл он просто не срабатывает и не выводит ничего, то поисковик увидит битую ссылку

я вам кажется уже пыталась объяснить один раз, что поисковики не исполняют скрипты и им глубоко наплевать что скрипт нашёл и что вывел в итоге.
для внесения полной ясности проделайте эксперимент. прямо на этой странице нажмите сочетание клавиш ctrl+u
откроется окно с исходником. вот так видят ваш сайт поисковики. вот так как в открывшемся окне. выстраивайте свою стратегию общения с поисковиками именно из этого, то есть ориентируйтесь на исходник
для разнообразия если есть аккаунт в вебмастере гугла, то воспользуйтесь функцией Просмотреть как Googlebot вбейте туда страницу где стоит ваша конструкция и отправьте запрос. это будет максимально наглядно

Это все видел, проделывал(не 1 раз) и знаю, потому и интересуюсь именно возможностью манипулировать серверными скриптами, которые выдадут или НЕ выдадут любому(как пользователю, так и роботу) обсуждаемую ссылку. Ведь условие <?if()?> выполняется еще на сервере и при false тело условия уже никуда не выдается. Только как этот if заставить проверить наличие файла? На сколько я понимаю эти серверные переменные не могут принимать пользовательские данные такие как имя и адрес файла в целях безопасности? А для моих целей похоже именно это и нужно(

Quote (YuriT)
1. надо писать <a href='/$URI_ID$.xml'> , иначе все Ваши ссылки окажутся битыми независимо от присутствия файла

Это я тут запарился, на сайте написано как в вашем образце и все проверенно и работает.

Quote (YuriT)
2. как-то сомнительно, чтобы от доступности этих самых XML-файлов для поисковиков была какая-то польза. Яндекс, к примеру, XML-файлы, на которые идут ссылки со страниц, вообще не обрабатывает (а вместо этого выдает в диагностике ошибку "не поддерживаемый тип данных").
Если хотите, чтобы Ваши данные действительно стали доступны поисковикам - то почитайте в их хэлпах, какие форматы структурированных данных они поддерживают (это микроформат и еще несколько строго определенных форматов данных).

На счет яндекса я видел список поддерживаемых форматов, но не было сказано что список полный... теперь яснее. Гугл обрабатывает такие файлы. Формат файла по сути не слишком важен - переделаю под любой который может использоваться как база данных(правда не разбирался что такое микроформаты, но тут гугл в помощь).
За познавательную инфу спасибо, но суть остается той же - какой бы формат не был, нужна проверка сервером наличия файла и выдача или нет ссылки на него. Пока других вариантов не вижу.

Если ты упал... поднимись, если все не так... изменись, если ставишь цель... достигай, нет предела в твоих силах так и знай...
svdressmaker
Сообщений: 25
Репутация: 3

Сообщение # 59 | 05:03:01
Каким образом с помощью условных операторов можно запретить пользователям читать блоги друг друга?
БлагоДарю!

Мы не сможем без искажений воспринимать другого человека до тех пор, пока наш ум не будет чист (свободен от грехов).

(Веды)

Сообщение отредактировал svdressmaker - Воскресенье, 20 Фев 2011, 05:05:35
Splin3971
Сообщений: 17
Репутация: 3

Сообщение # 60 | 11:58:32
Quote (svdressmaker)
Каким образом с помощью условных операторов можно запретить пользователям читать блоги друг друга?

Как ваиант:
1. В шаблоне "Вид материалов" убираем строку
Code
<?if($MESSAGE$)?><div class="eMessage" style="text-align:left;clear:both;padding-top:2px;padding-bottom:2px;">$MESSAGE$</div><?endif?>

2. В шаблоне "Страница материалов и комментариев к нему" заменяем
Code
$MESSAGE$

на
Code
<?if($USER$==$USERNAME$)?>$MESSAGE$<?else?>Вы не автор<?endif?>

Таким образом все смогут видеть заголовки блогов, но только авторы смогут видеть текст блога.
Лучшего варианта я не вижу, потому как в Архиве материалов и на Главной странице блогов нет переменной которая выдавала бы имя текущего пользователя.
Может координаторы что по существеннее подскажут.

Если ты упал... поднимись, если все не так... изменись, если ставишь цель... достигай, нет предела в твоих силах так и знай...
Сообщество uCoz » Архивариус » Корзина » Условные операторы: скрытие информации (как сделать, чтобы видели только зарегистрированные)
Поиск: