Back to Programming Articles

Verify if user is logged in for non-vb pages, using Jquery
by xman_79 04 Mar 2013

1 - vbconnect.php
PHP Code:
<?php
chdir
('./YOUR_FORUM_FOLDER_NAME');
define('CVD', (($getcwd getcwd()) ? $getcwd '.'));
require_once(
CVD '/global.php');

$vbulletin->input->clean_array_gpc('p', array('ajax' => TYPE_BOOL));

if(
$vbulletin->GPC['ajax'] == true)    
{
    
$result = array(
        
'username' => $vbulletin->userinfo['username'],
        
'userid' => $vbulletin->userinfo['userid'],
        
'userpost' => $vbulletin->userinfo['posts'],
     );
    echo 
json_encode($result);
}
?>
2- jquery_cookie.js
Create this file using the code from this https://raw.github.com/carhartl/jquery-cookie/master/jquery.cookie.js

3- jquery_vbulletin.js
Change XXX with any another prefix wich do you want
Code:
$(document).ready(function () 
{
    $.ajax({
        url:'vbconnect.php',
        type:'POST',
        data:'&ajax=1',
        cache:false,
        async:false,
        dataType:'json',
        success:function(result){
            $.cookie('XXXuserid', result['userid'], { expires: 7, path: '/' });
            $.cookie('XXXusername', result['username'], { expires: 7, path: '/' });
            $.cookie('XXXuserpost', result['userpost'], { expires: 7, path: '/' });},
        error:function(){
            $.cookie('XXXuserid', '', { expires: 7, path: '/' });
            $.cookie('XXXusername', '', { expires: 7, path: '/' });
            $.cookie('XXXuserpost', '', { expires: 7, path: '/' });}
    })
});
4- In your php file (external file and not in directory of the forum)
Change XXX with your prefix using in jquery_vbulletin.js file
PHP Code:
<?php

$vb_userid    
$_COOKIE['XXXuserid'];
$vb_username  $_COOKIE['XXXusername'];
$vb_userpost  $_COOKIE['XXXuserpost'];

if(
$vb_userid)
{
    
// The guest is logged in 
    // Exemple
    
$output "Welcome $vb_username";
}
else
{
    
// The guest is not logged in 
    // Exemple
    
$output "Welcome " $_SERVER['REMOTE_ADDR'] . " , you are not connected to the forum";
}

?>
5- Your output (html / php)
Code:
<script src="http://code.jquery.com/jquery-latest.js"></script>
<script src="your/path/to/javascript/directory/jquery_cookie.js"></script>
<script src="your/path/to/javascript/directory/jquery_vbulletin.js"></script>
<?php echo $output; ?>

Similar Mods

Mini Mods jQuery Accordian Module for vBAdvanced Pages vBulletin 3.8 Add-ons
Mini Mods jQuery Accordian Menu for vBAdvanced Pages vBulletin 3.8 Add-ons
Verify User Email Addresses vBulletin 2.x Full Releases

vblts.ru supports vBulletin®, 2022-2024