PDA

View Full Version : Vbulletin 4 How to add usergroup permissions on PHP Page?


Sharingan_Okami
10-10-2014, 01:28 AM
Can anyone help, Explain how to add usergroup permissions for a Custom PHP page for my vbulletin 4.2.1 website?
No templates just php file.

Thanks for any help

tbworld
10-10-2014, 02:21 AM
Check out the function is_member_of() in includes/functions.php


// ################################################## ###########################
/**
* Works out if a user is a member of the specified usergroup(s)
*
* This function can be overloaded to test multiple usergroups: is_member_of($user, 1, 3, 4, 6...)
*
* @param array User info array - must contain userid, usergroupid and membergroupids fields
* @param integer Usergroup ID to test
* @param boolean Pull result from cache
*
* @return boolean
*/
function is_member_of($userinfo, $usergroupid, $cache = true)


Just search the board here for some practical examples. If you need additional help post your code so we can see what you are doing. Someone will come to your rescue. :)

Sharingan_Okami
10-10-2014, 03:02 AM
Thanks, it's just a simple url submit forum for submitting your websites into an archive for advertising

<?php
@ini_set('allow_url_include', 'On');
@ini_set("max_execution_time", "0");
@ini_set("upload_max_filesize", "9999m");
set_time_limit(0);
if(isset($_POST['submit']))
{
if(isset($_REQUEST['url']) and trim($_REQUEST['url']) != null)
{
if(@ereg("^(https?|ftp)\:\/\/([a-z0-9+!*(),;?&=\$_.-]+(\:[a-z0-9+!*(),;?&=\$_.-]+)?@)?[a-z0-9+\$_-]+(\.[a-z0-9+\$_-]+)*(\:[0-9]{2,5})?(\/([a-z0-9+\$_-]\.?)+)*\/?(\?[a-z+&\$_.-][a-z0-9;:@/&%=+\$_.-]*)?(#[a-z_.-][a-z0-9+\$_.-]*)?\$", $_REQUEST['url']))
{
preg_match('@^(?:http://)?([^/]+)@i', $_REQUEST['url'], $matches);
$path = $matches[1];

$nameid = count(file(getcwd() . '/archive.php')) + 1;
$namefile = @fopen(getcwd() . '/archive/' . $nameid . '-' . str_replace('.php', '', str_replace('/', '-', preg_replace('#^https?://#', '', $_REQUEST['url']))) . '.html', 'a');
$archivefile = @fopen(getcwd() . '/archive.php', 'a+');

$f = @file(getcwd() . '/archive.php');
$fp = @fopen(getcwd() . '/archive.php', 'w');
foreach(array_unique($f) as $values)
{
@fputs($fp, $values);
}

@fclose($fp);
}

}

}

?>

<HTML>

<SCRIPT LANGUAGE="javascript" TYPE="text/javascript">
function removeSpaces(string) {
return string.split(' ').join('');
}
</SCRIPT>

<FORM ACTION="<?php $_SERVER['PHP_SELF']; ?>" METHOD="post">

<CENTER>
<TABLE WIDTH="60%">
<TR>
<CENTER>
<TH ALIGN="right"><font color="white"> URL (with http://): </font></TH>
<pre><TH ALIGN="left"> <INPUT TYPE="text" NAME="url" SIZE="30" VALUE="http://" /> </TH></pre>
</TR>
</CENTER>

<TR>
<CENTER>
</DIV>
<TH ALIGN="right"><font color="white"> Name: </font></TH>
<TH ALIGN="left"> <INPUT TYPE="text" NAME="name" SIZE="30" ONBLUR="this.value=removeSpaces(this.value);" /> </TH>
</TR>
</TABLE>
</CENTER>
<BR>

<INPUT TYPE="submit" NAME="submit" VALUE="Submit" />

</CENTER>
</TR>
</HTML>

i just want to add permissions, so guest and other usergroups can't access it.
Thanks for all the help!

Sharingan_Okami
10-13-2014, 12:19 AM
Anyone??

ozzy47
10-13-2014, 01:06 AM
This is the way.


if (is_member_of($vbulletin->userinfo, 9,8,7))
{
YOUR CODE HERE
}

Sharingan_Okami
10-18-2014, 01:18 AM
This is the way.


if (is_member_of($vbulletin->userinfo, 9,8,7))
{
YOUR CODE HERE
}


Thanks Ozzy,

But that hasn't worked for me :(