Создание страниц в стиле конференции
					Правила форума
Местная Конституция | Шаблон запроса | Документация (phpBB3) | Мини [FAQ] по phpBB3.1.x/3.3.x | FAQ | Как задавать вопросы | Как устанавливать расширения
Ваш вопрос может быть удален без объяснения причин, если на него есть ответы по приведённым ссылкам (а вы рискуете получить предупреждение ).
 ).
		
		
	Местная Конституция | Шаблон запроса | Документация (phpBB3) | Мини [FAQ] по phpBB3.1.x/3.3.x | FAQ | Как задавать вопросы | Как устанавливать расширения
Ваш вопрос может быть удален без объяснения причин, если на него есть ответы по приведённым ссылкам (а вы рискуете получить предупреждение
 ).
 ).
		
		- 
				mike2003  
- phpBB 2.0.5
- Сообщения: 452
- Стаж: 9 лет 7 месяцев
- Благодарил (а): 25 раз
- Поблагодарили: 7 раз
Re: Создание страниц в стиле конференции
м... лучше там наверное это написать. а это уже исправлено? или расширение заброшено?
			
			
									
						- 
				Sheer  
- Former team member
- Сообщения: 12113
- Стаж: 18 лет 8 месяцев
- Откуда: Калининград не Кенигсберг
- Благодарил (а): 36 раз
- Поблагодарили: 1526 раз
Re: Создание страниц в стиле конференции
Ну вообще-то об этом написано здесь [FAQ] Как устанавливать расширения
именно в верхнем регистре, значит и нужно было создать папку 
Не совсем правильно это, признаю, но не смертельно. Что интересно, другие расширения, где написано, например работают без проблем, будучи установлены в папку 
			
			
									
						А в файле composer.json расширения написано
Код: Выделить всё
"name": "Sheer/knowlegebase",ext/SheerНе совсем правильно это, признаю, но не смертельно. Что интересно, другие расширения, где написано, например
Код: Выделить всё
"name": "sheer/connectionlog", ext/SheerОбщие ошибки новичков (07.11.2005) & Как задавать вопросы
Мини FAQ
Если ничто другое не помогает, прочтите, наконец, инструкцию!
"Никакая инструкция не может перечислить всех обязанностей должностного лица, предусмотреть все отдельные случаи и дать вперёд соответствующие указания, а поэтому господа инженеры должны проявить инициативу и, руководствуясь знаниями своей специальности и пользой дела, принять все усилия для оправдания своего назначения".
Циркуляр Морского технического комитета №15 от 29.11.1910 г.
- 
				mike2003  
- phpBB 2.0.5
- Сообщения: 452
- Стаж: 9 лет 7 месяцев
- Благодарил (а): 25 раз
- Поблагодарили: 7 раз
Re: Создание страниц в стиле конференции
ты не учитываешь расширение "загрузчик", которое делает все автоматом и которое активно тут продвигается
в любом случае я имел ввиду ту же проблему путей app.php, которую ты не учитываешь при составлении УРЛ
- 
				Sumanai  
- phpBB 3.0.0 RC5
- Сообщения: 1668
- Стаж: 10 лет 11 месяцев
- Благодарил (а): 235 раз
- Поблагодарили: 173 раза
Re: Создание страниц в стиле конференции
Вполне возможно, что это расширение не учитывает случай разного регистра в названии каталога вендора.
- 
				LavIgor  
- Former team member
- Сообщения: 3468
- Стаж: 11 лет 6 месяцев
- Благодарил (а): 39 раз
- Поблагодарили: 792 раза
Re: Создание страниц в стиле конференции
Sumanai, загрузчик просто делает свою работу: берёт ту самую строку name и делает mkdir(). mike2003 говорит не об этом.
			
			
									
						- 
				lite
- phpBB 1.0.0
- Сообщения: 5
- Стаж: 11 лет 11 месяцев
- Благодарил (а): 3 раза
Re: Создание страниц в стиле конференции
Здравствуйте. По теме возникли два вопроса. Поиск в нете и по конференции толкового ничего не дал. Где искать в документации на английском даже не пойму где искать.
1. При задании глобальной переменной в конструкторе, например
обратиться к ней в вызываемой
Вопрос : как обратиться к этой переменной в
2. Как обратиться к суперглобальным переменным типа $_SERVER.
Нашел простое, не правильное решение отключить в конфиге блокировку суперглобальных переменных
			
			
									
						1. При задании глобальной переменной в конструкторе, например
$phpbb_root_path,обратиться к ней в вызываемой
public функции можно так: $this->phpbb_root_pathВопрос : как обратиться к этой переменной в
private functionglobal $phpbb_root_path  вызывает ошибку. Задавать её заранее правкой кода не правильно с точки зрения концепции расширений phpbb3.1.х2. Как обратиться к суперглобальным переменным типа $_SERVER.
Нашел простое, не правильное решение отключить в конфиге блокировку суперглобальных переменных
core.disable_super_globals: false - 
				Татьяна5  
- Поддержка 
- Сообщения: 12855
- Стаж: 14 лет 2 месяца
- Благодарил (а): 160 раз
- Поблагодарили: 2328 раз
Re: Создание страниц в стиле конференции
1. Никак, в них 
2. Лучше не отключать, всё доступно в
			
			
									
						$this нет. Только изменять видимость функции2. Лучше не отключать, всё доступно в
$request ($_SERVER - $request->server)- 
				LavIgor  
- Former team member
- Сообщения: 3468
- Стаж: 11 лет 6 месяцев
- Благодарил (а): 39 раз
- Поблагодарили: 792 раза
Re: Создание страниц в стиле конференции
Приведите пример кода, сейчас не особо понятно, о чём именно вы говорите.
Обращаться к закрытым свойствам класса из его наследников нельзя, однако описанных проблем с доступом к
$phpbb_root_path при правильном подходе к созданию классов возникать не должно.Через объект
$request, как ответили выше.Изучите все методы соответствующего класса для дальнейшей работы.
- 
				lite
- phpBB 1.0.0
- Сообщения: 5
- Стаж: 11 лет 11 месяцев
- Благодарил (а): 3 раза
Re: Создание страниц в стиле конференции
Туплю. Не пойму как вставить:
тут в общем то понятно, переменной в функции и не объявлено
пробую так:
Нужные данные в объекте вроде есть:
Но как обратиться никак не пойму.
			
			
									
						$request->server - Trying to get property of non-objectтут в общем то понятно, переменной в функции и не объявлено
пробую так:
$this->request->server - Undefined property: phpbb/request/request::$server$this->request['server'] - Undefined property: phpbb/request/request::$serverНужные данные в объекте вроде есть:
Код: Выделить всё
phpbb\request\request Object
(
    [super_globals:protected] => Array
        (
            [0] => _POST
            [1] => _GET
            [2] => _REQUEST
            [3] => _COOKIE
            [4] => _SERVER
            [5] => _FILES
        )
...
     [input:protected] => Array
         (
         ...
            [4] => Array
                (...
                    [REQUEST_URI] => /viewtopic.php?f=4&t=4525
		...) Тройка конечно проще и старше, по ней много чего есть и на русском. По тройке ни одного вопроса не задавал, а тут выдохся. В мануале https://area51.phpbb.com/docs/code/3.1.x/ вроде всё есть, но не понятно как пользоваться в реале.LavIgor писал(а):Изучите все методы соответствующего класса для дальнейшей работы.
- 
				rxu  
- phpBB Guru 
- Сообщения: 17059
- Стаж: 19 лет 5 месяцев
- Откуда: Красноярск
- Благодарил (а): 565 раз
- Поблагодарили: 1742 раза
Re: Создание страниц в стиле конференции
Код: Выделить всё
$this->request->server('MY_COOL_VARIABLE_IN_SERVER_SUPERGLOBAL_ARRAY', $optional_default_value_if_not_exist);- 
				lite
- phpBB 1.0.0
- Сообщения: 5
- Стаж: 11 лет 11 месяцев
- Благодарил (а): 3 раза
Re: Создание страниц в стиле конференции
rxu, если использовать дословно, ошибка 
Если убрать из кода переменную или заменить так:
В соседней теме
чего не хватает или ещё что то не вижу?
			
			
									
						Undefined variable: optional_default_value_if_not_existЕсли убрать из кода переменную или заменить так:
$this->request->server('MY_COOL_VARIABLE_IN_SERVER_SUPERGLOBAL_ARRAY', 'REQUEST_URI')), то ошибки нет, результат - пустая строка.В соседней теме
Видимо засада в неправильном конструкторе.LavIgor писал(а): 04.07.2016 19:20Если же Вы работаете с классом, то в нём должен быть подходящий конструктор.
Код: Выделить всё
	public function __construct(
	\phpbb\config\config $config,
	\phpbb\request\request $request,
	\phpbb\user $user,
	\phpbb\auth\auth $auth, 
	\phpbb\path_helper $path_helper,
	\phpbb\db\driver\driver_interface $db,
	\phpbb\template\template $template, 
	$phpbb_root_path, 
	$php_ext
	)
	{
		$this->config = $config;
		$this->request = $request;
		$this->user = $user;
		$this->auth = $auth;
		$this->path_helper = $path_helper;
		$this->db = $db;
		$this->template = $template;		
		$this->phpbb_root_path = $phpbb_root_path;
		$this->php_ext = $php_ext;
	}- 
				LavIgor  
- Former team member
- Сообщения: 3468
- Стаж: 11 лет 6 месяцев
- Благодарил (а): 39 раз
- Поблагодарили: 792 раза
Re: Создание страниц в стиле конференции
lite, проблема в понимании английского языка.
Переведу сообщение rxu:
			
			
									
						Переведу сообщение rxu:
Надеюсь, стало понятнее.rxu писал(а): 05.07.2017 18:10Код: Выделить всё
$this->request->server('ПЕРЕМЕННАЯ_В_СУПЕРГЛОБАЛЬНОМ_МАССИВЕ_SERVER', 'ЗНАЧЕНИЕ_ПО_УМОЛЧАНИЮ');
- 
				lite
- phpBB 1.0.0
- Сообщения: 5
- Стаж: 11 лет 11 месяцев
- Благодарил (а): 3 раза
Re: Создание страниц в стиле конференции
Да Спасибо! Уже сам понял, правильно так:
			
			
									
						$this->request->server( 'REQUEST_URI','')- 
				LavIgor  
- Former team member
- Сообщения: 3468
- Стаж: 11 лет 6 месяцев
- Благодарил (а): 39 раз
- Поблагодарили: 792 раза
Re: Создание страниц в стиле конференции
lite, второй параметр не обязателен, он по умолчанию пустой.
А код лучше привыкнуть оформлять правильно, а не как попало.
В Вашем случае -
			
			
									
						А код лучше привыкнуть оформлять правильно, а не как попало.
В Вашем случае -
$this->request->server('REQUEST_URI');- 
				lite
- phpBB 1.0.0
- Сообщения: 5
- Стаж: 11 лет 11 месяцев
- Благодарил (а): 3 раза

