Страница 2 из 2

Доступ к скрипту только для зарегистрированных

Добавлено: 17 окт 2014, 18:34
Alecto
Rxu, я еще учитываю специфику раздела - материал "для взрослых", мне ни в коем случае нельзя показывать его гостям - они даже знать не будут о существовании раздела. Ботам тоже вход закрыт - они не увидят этого форума.
Зарегистрированные пользователи смогут только увидеть форум в структуре, вот для них я и поставил скрипт.

Т.е. зашел гость, полазил по структуре, заинтересовался, зарегистрировался, стал НОВЫМ, начал писать на форуме, вышел из группы НОВЫЕ и только после этого увидел дополнительный раздел. Зашел в него - увидел ссылку на правила + инструкции как ему получить доступ (работа скрипта). Только прочитав и согласившись с правилами - пользователь может получить доступ к разделу.

Любые цитирования будут выполняться только внутри тем данного раздела, соответственно пользователями, у которых есть на это права
rxu писал(а):QR_BBPOST Кто-то по ошибке вставит ссылку из закрытого форума в открытом
в этом случае ключевое слово ПО ОШИБКЕ, так что если кто-то "левый" туда пойдет - будет облом, но этим случаем вполне можно пренебречь, так даже будет лучше.

Доступ к скрипту только для зарегистрированных

Добавлено: 17 окт 2014, 19:08
rxu
[ref]Alecto[/ref], да любой бот может тупо перебором айдишников наткнуться на любую тему в закрытом разделе при таком методе.
Считаю, что назначением прав в любом случае надежнее и безопаснее. Но это сугубо личное мнение.

Доступ к скрипту только для зарегистрированных

Добавлено: 17 окт 2014, 19:55
Alecto
а как создать кастомное право?

Отправлено спустя 36 минут 27 секунд:
нашел статью https://wiki.phpbb.com/Permissions
получается, что можно добавить право непосредственно в базу?

Код: Выделить всё

INSERT INTO phpbb_acl_options (auth_option, is_global, is_local, founder_only) VALUES ('u_view_foo', 1, 0, 0);
1 - как настроить право на просмотр тем в форуме?
2 - языковые переменные можно добавить в персональном эксте?

Доступ к скрипту только для зарегистрированных

Добавлено: 18 окт 2014, 00:55
Xisp
[ref]Alecto[/ref], по моему было право "Может видеть форум" (почему то на вкладке "Действия"), не оно?
А лучше роль "Нет доступа", и никто, ни боты, ни гости, ни новички не увидят.

Доступ к скрипту только для зарегистрированных

Добавлено: 18 окт 2014, 01:38
Alecto
Да, примерно так и есть.
Xisp писал(а):QR_BBPOST ни новички не увидят
увидят, потому как они по умолчанию уже входят в группу Зарегистрированные, которая может видеть форум. Ниже пояснения...

Гости и Боты - Нет доступа
Новые пользователи - Все нет, Может видеть форум - Никогда (чтобы переопределить права группы Зарегистрированные)
Зарегистрированные пользователи - Все нет, Может видеть форум - Да (чтобы знали о существовании раздела, но могли зайти только по собственному желанию при соблюдении ряда правил и требований).
Группа 18+ - Стандартный доступ.

Весь сыр-бор из-за того, что доступ к разделу предоставляется только после прочтения правил, вступлением в группу 18+
Но, когда зарегистрированные пользователи пытаются попасть в раздел и видят надпись "Нет доступа" - они ничего не понимают.
Право "Может видеть форум" скрывает также блок "Правила форума" в котором я мог бы описать что и почему.
Т.е. либо мне нужно дополнительное право, которое бы показывало список тем для форума + блок правил, но запрещало бы читать содержимое тем, либо тот вариант, на котором я пока остановился - скрипт отрабатывает по условиям и добавляет к строке о запрете доступа описательную часть. Как правильно заметил Rxu, отработаются не все случае, но в данной конкретной задачи точность составит 99%, что вполне приемлемо.
Как сделать через права - понятия не имею.

Доступ к скрипту только для зарегистрированных

Добавлено: 04 ноя 2014, 21:38
Alecto
в 30 для проверки, зарегистрирован пользователь или, при доступе к скрипту использовался следующий код

Код: Выделить всё

<?php
	define("DOCROOT", $_SERVER["DOCUMENT_ROOT"].DIRECTORY_SEPARATOR);

	// charset
	header("Content-type: text/html; charset=UTF-8");

	// session
	session_start();

	include 'classes/Upload.php';
	include 'classes/Crop.php';

	define('IN_PHPBB', TRUE);
	$phpbb_root_path = (defined('PHPBB_ROOT_PATH')) ? PHPBB_ROOT_PATH : '../';
	$phpEx = substr(strrchr(__FILE__, '.'), 1);
	include $phpbb_root_path.'common.'.$phpEx;

	// Start session management
	$user->session_begin();
	$auth->acl($user->data);
	$user->setup();
	if ($user->data['user_id'] == ANONYMOUS)
	{
		login_box('', $user->lang['LOGIN']);
	}
?>
в 31 появилась вот такая ошибка.
помогите поправить для новой версии.
Общая ошибка
Попытка перенаправления на потенциально опасный сайт.

BACKTRACE

FILE: (not given by php)
LINE: (not given by php)
CALL: msg_handler()

FILE: [ROOT]/includes/functions.php
LINE: 2300
CALL: trigger_error()

FILE: [ROOT]/includes/functions.php
LINE: 2878
CALL: redirect()

FILE: [ROOT]/ucp.php
LINE: 84
CALL: login_box()


перенс вопрос сюда http://www.phpbbguru.net/community/topic42457.html