Очевидно, что если файловый менеджер показывает на переднем конце, это означает, что вы уже скопировали это файлы из соответствующих папок администратора в каталог папок.
Код администратора файлового менеджера по умолчанию написан для администратора, поэтому он отображает все файлы, но для ваших членов, вы должны добавить условие, чтобы они могли обращаться к только разрешенным папкам, как вы говорите.
Для этого измените вам catalog > controller > common > filemanager.php
файл и поиск этого кода
if (isset($this->request->get['directory'])) {
$directory = rtrim(DIR_IMAGE . 'catalog/' . str_replace(array('../', '..\\', '..'), '', $this->request->get['directory']), '/');
} else {
$directory = DIR_IMAGE . 'catalog';
}
это $directory
переменная отвечает за показ этих папок. Поэтому после обновления вы можете ограничить своих членов.
Теперь вы говорили, что на основе имени будет хорошо, но я предлагаю, что сочетание имени и члена id будет хорошим, потому что одно и то же имя может вызвать ошибку!
Теперь вам нужно получить подробную информацию о вашей текущей таблице форм для входа в систему, в которой вы их сохранили. Как
$memberDetails = $this->db->query("your query")->row;
//Assuming $memberDetails have min 2 indexes -> ['id', 'name']
Так что ваш filemanager.php обновленный код будет
if (isset($this->request->get['directory'])) {
$directory = rtrim(DIR_IMAGE . 'catalog/' . $memberDetails['id'] . $memberDetails['name'] . '/' . str_replace(array('../', '..\\', '..'), '', $this->request->get['directory']), '/');
} else {
$directory = DIR_IMAGE . 'catalog'. $memberDetails['id'] . $memberDetails['name'];
}
//added member details after catalog folder.
Подобно этому вы можете добавить условия для загрузки и удаления тоже.
Примечание - Не проверял, но будет работать :)