Pagina's enkel voor bepaalde gebruikersgroepen

Hulp nodig bij een modificaties of op zoek naar een MOD?
Forumregels

LEES: Richtlijnen voor Support. Vul de support template in!
phpBB3.0.x
Verschaf iemand geen servertoegang tenzij het niet anders kan. Maak altijd eerst een volledige backup en verander de inloggevens na afloop. Eigen risico.
Plaats reactie
Mister v
Berichten: 41
Lid geworden op: 18 nov 2009, 21:49

Pagina's enkel voor bepaalde gebruikersgroepen

Bericht door Mister v » 19 nov 2009, 09:12

  • Adres van je forum: http://www.vijverhengelen.be
    phpBB versie:3.0.
    Wat is het probleem?
    Ik zou graag verschillende nieuwe pagina's maken voor mijn forum
    Nu is me dat al aardig gelukt met wat hulp van her en der maar ik zou nog hetvolgende willen.
    Sommige pagina's zouden maar mogen te zien zijn voor 3 gebruikersgroepen (beheerders, moderators, en pro gebruikers) Ik weet dat het mogelijk is alleen geraak ik er niet aan uit hoe het moet.Heb al op verschillende sites gekeken maar krijg nergens hulp.Ik hoop eigenlijk dat ik er hier wel krijg. Een kenner ben ik niet maar wil het wel leren maar zonder hulp word dat moeilijk.De pagina's kan je terug vinden op mijn portaal in de blok info daar staan linken naar de pagina's.
    Dus mijn vraag hoe doe ik dat dat er maar 3 gebruikersgroepen sommige pagina's kunnen zien ?
    Een voorbeeld van mijn pagina's zal ik eens hieronder plaatsen
    mijn html bestand

    Code: Selecteer alles

        <!-- INCLUDE overall_header.html -->
    <table class="tablebg" cellspacing="1" cellpadding="0" width="100%">
    <tbody>
    <tr>
    <th>
    <span style="">Testpagina</span>
    </th>
    </tr>
    <tr class="row1">
    <td style="padding: 0px;">
    <table class="tablebg" cellspacing="1" width="100%">
    
    <tr class="row1"><td style="padding: 5px;">
    <div class="postbody">
    Hier komt de titel
    
    </div>
    </td>
    
    </tr>
    <tr class="row1">
    <td style="padding: 5px;">
    <div class="postbody">
    hier ook tekst
    </div></td>
    
    </tr>
    </table>
    </td>
    </tr>
    
    </table> 
    
        <!-- INCLUDE overall_footer.html -->
       
    </body>
    </html>
    
    mijn php bestand

    Code: Selecteer alles

    <?php/
    [code]<?php   /** 
        *
        * @package phpBB3
        * @version $Id: test.php,v 1.171 2007/04/30 13:30:20 acydburn Exp $
        * @copyright (c) 2007 phpBBservice.nl
        * @license http://opensource.org/licenses/gpl-license.php GNU Public License 
        *
        */
    
        /**
        * @ignore
        */
        define('IN_PHPBB', true);
        $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('test');  //dit is het taal bestand, in dit geval test
    
        //hier kan je de php code plaatsen naar keuze
    
        //hoofdpagina titel, en tekst in de taalbalk
        page_header($user->lang['test']);
    
        //dit is het HTML bestand, en kan je weer aanpassen naar keuze
        $template->set_filenames(array(
           'body' => 'test.html')
        );
    
        page_footer();
    	?>
    Mijn taalbestand

    Code: Selecteer alles

    <?php
        /** 
        *
        * @package phpBB3
        * @version $Id: test.php,v 1.171 2007/04/30 13:30:20 acydburn Exp $
        * @copyright (c) 2007 phpBBservice.nl
        * @license http://opensource.org/licenses/gpl-license.php GNU Public License 
        *
        */
    
        /**
        * DO NOT CHANGE
        */
        if (empty($lang) || !is_array($lang))
        {
            $lang = array();
        }
    
    
        $lang = array_merge($lang, array(
        'test'   => 'Testpagina',
        ));
    	?>

Gebruikersavatar
FreakyBlue
Berichten: 1607
Lid geworden op: 29 okt 2007, 22:15
Locatie: Netherlands
Contacteer:

Re: Pagina's enkel voor bepaalde gebruikersgroepen

Bericht door FreakyBlue » 19 nov 2009, 10:51

Dat kan je doen door te checken of iemand lid is van die bepaalde groepen.
Bijvoorbeeld door dit:

Code: Selecteer alles

    if (!group_memberships(array(3,4), $user->data['user_id'], true))
    {
        trigger_error('NOT_ALLOWED');
    }
Dit wil zeggen dat de gebruikers die lid zijn van de groupen met ID 3, 4 toegang hebben en anderen niet.
Dus even uitzoeken welke ID hoort bij beheerders, moderators, en pro gebruikers, die toevoegen, code plaatsen in je php bestand.
My music and tutorials -> https://youtube.com/gh0stwrit3rMusic/
Former phpBB Style and Mod Author -> https://www.phpbb.com/customise/db/auth ... tributions

Mister v
Berichten: 41
Lid geworden op: 18 nov 2009, 21:49

Re: Pagina's enkel voor bepaalde gebruikersgroepen

Bericht door Mister v » 19 nov 2009, 10:57

o bedank .Kan het zijn dat deze groepen van mij 5, 7, 13 zijn
en waar moet ik dit dan juist plaatsen in php bestand? helemaal boven aan of waar precies
ik heb al geprobeerd op verschillende plaatsen maar ik krijg telkens een error

Code: Selecteer alles

        if (!group_memberships(array(5,7,13), $user->data['user_id'], true)
        {
            trigger_error('NOT_ALLOWED');
        }

Gebruikersavatar
FreakyBlue
Berichten: 1607
Lid geworden op: 29 okt 2007, 22:15
Locatie: Netherlands
Contacteer:

Re: Pagina's enkel voor bepaalde gebruikersgroepen

Bericht door FreakyBlue » 19 nov 2009, 11:16

Welke ID bij jouw groepen horen weet ik niet. Dat zal je even moeten checken in bijvoorbeeld je database in de tabel phpbb_groups.

De code plaats je hier:

Code: Selecteer alles

    <?php/
    [code]<?php   /**
        *
        * @package phpBB3
        * @version $Id: test.php,v 1.171 2007/04/30 13:30:20 acydburn Exp $
        * @copyright (c) 2007 phpBBservice.nl
        * @license http://opensource.org/licenses/gpl-license.php GNU Public License
        *
        */

        /**
        * @ignore
        */
        define('IN_PHPBB', true);
        $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('test');  //dit is het taal bestand, in dit geval test

        //hier kan je de php code plaatsen naar keuze
        if (!group_memberships(array(3,4), $user->data['user_id'], true)
        {
            trigger_error('NOT_ALLOWED');
        }

        //hoofdpagina titel, en tekst in de taalbalk
        page_header($user->lang['test']);

        //dit is het HTML bestand, en kan je weer aanpassen naar keuze
        $template->set_filenames(array(
           'body' => 'test.html')
        );

        page_footer();
       ?>
My music and tutorials -> https://youtube.com/gh0stwrit3rMusic/
Former phpBB Style and Mod Author -> https://www.phpbb.com/customise/db/auth ... tributions

Mister v
Berichten: 41
Lid geworden op: 18 nov 2009, 21:49

Re: Pagina's enkel voor bepaalde gebruikersgroepen

Bericht door Mister v » 19 nov 2009, 11:30

ik krijg nog steeds een error

Code: Selecteer alles

Parse error: syntax error, unexpected '{' in /home/fishmate/domains/vijverhengelen.be/public_html/voerreseptjes.php on line 39
zo staat het in mijn php

Code: Selecteer alles

<?php
     /** 
    *
    * @package phpBB3
    * @version $Id: test.php,v 1.171 2007/04/30 13:30:20 acydburn Exp $
    * @copyright (c) 2007 phpBBservice.nl
    * @license http://opensource.org/licenses/gpl-license.php GNU Public License 
    *
    */

    /**
    * @ignore
    */      
    define('IN_PHPBB', true);
    $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('voertjes');  //dit is het taal bestand, in dit geval voertjes
        $sql = 'SELECT user_id
       FROM ' . USER_GROUP_TABLE . '
       WHERE group_id = 7
          AND user_id = ' . $user->data['user_id'] . '
       LIMIT 1';

    $result = $db->sql_query($sql);
    if ($db->sql_fetchrow($result))
    {
       $template->assign_vars(array('S_INCLUDE_FOR_GROUP_5'   => true));
    }
    $db->sql_freeresult($result); 
	// Output the page 
    //hier kan je de php code plaatsen naar keuze
            if (!group_memberships(array(5,7,13), $user->data['user_id'], true)
            {
                trigger_error('NOT_ALLOWED');
            }

    //hoofdpagina titel, en tekst in de taalbalk
    page_header($user->lang['voertjes']);

    //dit is het HTML bestand, en kan je weer aanpassen naar keuze
    $template->set_filenames(array(
       'body' => 'voertjes.html')
    );

    page_footer();
	?>

Gebruikersavatar
FreakyBlue
Berichten: 1607
Lid geworden op: 29 okt 2007, 22:15
Locatie: Netherlands
Contacteer:

Re: Pagina's enkel voor bepaalde gebruikersgroepen

Bericht door FreakyBlue » 19 nov 2009, 11:48

Je mist een ) op regel 38.
Dit moet het zijn:

Code: Selecteer alles

 if (!group_memberships(array(5,7,13), $user->data['user_id'], true))
                {
                    trigger_error('NOT_ALLOWED');
                }
My music and tutorials -> https://youtube.com/gh0stwrit3rMusic/
Former phpBB Style and Mod Author -> https://www.phpbb.com/customise/db/auth ... tributions

Gebruikersavatar
FreakyBlue
Berichten: 1607
Lid geworden op: 29 okt 2007, 22:15
Locatie: Netherlands
Contacteer:

Re: Pagina's enkel voor bepaalde gebruikersgroepen

Bericht door FreakyBlue » 19 nov 2009, 11:54

Ik heb nog eens rond zitten neuzen en eigenlijk is dit de meest koninklijke weg:
http://wiki.phpbb.com/Adding_pages#Cont ... t_by_Group

Kortom, advies is om het op deze manier te doen.
My music and tutorials -> https://youtube.com/gh0stwrit3rMusic/
Former phpBB Style and Mod Author -> https://www.phpbb.com/customise/db/auth ... tributions

Mister v
Berichten: 41
Lid geworden op: 18 nov 2009, 21:49

Re: Pagina's enkel voor bepaalde gebruikersgroepen

Bericht door Mister v » 19 nov 2009, 11:56

er moet nog ergens een fout inzitten ik krijg terug dezelfde error

Code: Selecteer alles

Fatal error: Call to undefined function group_memberships() in /home/fishmate/domains/vijverhengelen.be/public_html/voerreseptjes.php on line 38
nu is het bij mij zo

Code: Selecteer alles

<?php
     /** 
    *
    * @package phpBB3
    * @version $Id: test.php,v 1.171 2007/04/30 13:30:20 acydburn Exp $
    * @copyright (c) 2007 phpBBservice.nl
    * @license http://opensource.org/licenses/gpl-license.php GNU Public License 
    *
    */

    /**
    * @ignore
    */      
    define('IN_PHPBB', true);
    $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('voertjes');  //dit is het taal bestand, in dit geval voertjes
        $sql = 'SELECT user_id
       FROM ' . USER_GROUP_TABLE . '
       WHERE group_id = 7
          AND user_id = ' . $user->data['user_id'] . '
       LIMIT 1';

    $result = $db->sql_query($sql);
    if ($db->sql_fetchrow($result))
    {
       $template->assign_vars(array('S_INCLUDE_FOR_GROUP_5'   => true));
    }
    $db->sql_freeresult($result); 
	// Output the page 
    //hier kan je de php code plaatsen naar keuze
            if (!group_memberships(array(5,7,13), $user->data['user_id'], true))
                {
                    trigger_error('NOT_ALLOWED');
                }

    //hoofdpagina titel, en tekst in de taalbalk
    page_header($user->lang['voertjes']);

    //dit is het HTML bestand, en kan je weer aanpassen naar keuze
    $template->set_filenames(array(
       'body' => 'voertjes.html')
    );

    page_footer();
	?>

Gebruikersavatar
FreakyBlue
Berichten: 1607
Lid geworden op: 29 okt 2007, 22:15
Locatie: Netherlands
Contacteer:

Re: Pagina's enkel voor bepaalde gebruikersgroepen

Bericht door FreakyBlue » 19 nov 2009, 12:00

Zoals ik al aangaf, kan je het (achteraf bezien) beter op deze manier doen: http://wiki.phpbb.com/Adding_pages#Cont ... t_by_Group
My music and tutorials -> https://youtube.com/gh0stwrit3rMusic/
Former phpBB Style and Mod Author -> https://www.phpbb.com/customise/db/auth ... tributions

Mister v
Berichten: 41
Lid geworden op: 18 nov 2009, 21:49

Re: Pagina's enkel voor bepaalde gebruikersgroepen

Bericht door Mister v » 19 nov 2009, 21:58

zal het eens bekijken of ik eraan uit geraak e
bedankt voor de hulp alvast hoor
ben al blij dat ik hier geholpen word

Mister v
Berichten: 41
Lid geworden op: 18 nov 2009, 21:49

Re: Pagina's enkel voor bepaalde gebruikersgroepen

Bericht door Mister v » 19 nov 2009, 22:29

sorry voor het tweede bericht vlak na mijn vorige te plaatsen maat het is voor hetvolgende
ik heb het geprobeerd en heb de code geplaatst waar er staat dat ik code kan plaatsen
Heb dat dan getest maar blijkbaar loopt er nog iets fout
Ik zie de pagina met alles erop en eraan als ik met beheerderspermissie werk dus dat is juist
maar als ik de permissie gebruik van iemand uit een groep die de pagina niet mag zien zie ik wel nog alles

blijkbaar toch een moeilijk gegeven en zeker voor mij :cry:

Plaats reactie