Σελίδα 1 από 1

Προσβάση σε σελίδα από συγκεκριμένες ομάδες

Δημοσιεύτηκε: Κυρ 12 Ιουν 2016, 22:49
από TJK
Γεια σας,

έχω δημιουργήσει μία costum page και θα θελα να δώσω πρόσβαση σε αυτή μόνο συγκεκριμένες ομάδες. Πιο συγκεκριμένα οι ομάδες που θέλω να δώσω πρόσβαση είναι αυτές με id το 5 και το 8. Το .php είναι παρακάτω

Κώδικας: Επιλογή όλων

<?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();

page_header('MathJaX');


 if ($user->data['group_id'] == '5' || $user->data['group_id'] == '8')
{
page_header('MathJaX');

$template->set_filenames(array(
    'body' => 'latexgr.html',
));
}
else
{
page_header('MathJaX');

$template->set_filenames(array(
    'body' => 'denied.html',
));
}

make_jumpbox(append_sid("{$phpbb_root_path}viewforum.$phpEx"));
page_footer();
?>
Το 5 είναι για την ομάδα των διαχειριστών και το 8 είναι για την επιπρόσθετη ομάδα. Τι γίνεται όμως; Ο κώδικας λειτουργεί μια χαρά αν τα μέλη είναι στη default ομάδα. Για τα μέλη που δεν είναι στη default ομάδα η συνάρτηση που έφτιαξα τους πετάσει στο μήνυμα λάθους και ανοίγει το denied.html .

Πιο συγκεκριμένα, τα μέλη της ομάδας με id=5 είναι εγγεγραμμένοι χρήστες που ανήκουν επιπλέον και σε μία άλλη ομάδα. Θα θελα αυτή η ομάδα να έχει πρόσβαση στη σελίδα αυτή. Η διαχειριστική ομάδα δεν έχει κανένα πρόβλημα. Πώς το λύνουμε το ζήτημα;

Re: Προσβάση σε σελίδα από συγκεκριμένες ομάδες

Δημοσιεύτηκε: Τετ 29 Ιουν 2016, 13:19
από TJK
Εύρηκα:

Κώδικας: Επιλογή όλων

<?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();

page_header('MathJaX');
$template->assign_block_vars('navlinks', array(
            'FORUM_NAME'         => 'MathJaX', 
            'U_VIEW_FORUM'      => append_sid("{$phpbb_root_path}custom_page.$phpEx")) /
);


$group_ids = array(
    5,
    8,
);

$user_ary = array();

$sql = 'SELECT user_id
        FROM ' . USER_GROUP_TABLE . '
        WHERE ' . $db->sql_in_set('group_id', $group_ids);
$result = $db->sql_query($sql);

while ($row = $db->sql_fetchrow($result))
{
    $user_ary[$row['user_id']] = $row['user_id'];
}
$db->sql_freeresult($result);
page_header('MathJaX');

if (!in_array($user->data['user_id'], $user_ary))
{
    if ($user->data['user_id'] == ANONYMOUS)
    {
        login_box('', 'LOGIN');
    }
    
    trigger_error('NOT_AUTHORISED');
}
$template->set_filenames(array(
    'body' => 'latexgr.html',
));




make_jumpbox(append_sid("{$phpbb_root_path}viewforum.$phpEx"));
page_footer();
?>