The Arcive of Official vBulletin Modifications Site.It is not a VB3 engine, just a parsed copy! |
|
#3
|
|||
|
|||
![]()
Thanks for the help - simply re-loading the page seemed to do the trick.
Here's a complete example for anyone else interested in using the forum database as general purpose user authentication. Code:
<?php // ######################### REQUIRE BACK-END ############################ require_once('./global.php'); require_once(DIR . '/includes/functions_login.php'); require_once(DIR . '/includes/functions_misc.php'); //returns FALSE if locked out, or the number of strikes, or TRUE for success function validateLogin( $username, $password ) { global $vbulletin; $vbulletin->input->clean( $username, TYPE_STR ); $vbulletin->input->clean( $password, TYPE_STR ); $strikes = verify_strike_status($username); if ($strikes === false || $strikes >= 5) { return false; //locked out } if( !verify_authentication($username, $password, '', '', true, false) ) { exec_strike_user($vbulletin->userinfo[ $username ]); return $strikes + 1; //fat-fingered the password? } else { //User and pw ok, let's log them in exec_unstrike_user($username); process_new_login('', true, ''); return true; } } if( isset($_POST['do']) && $_POST['do'] === 'login' ) { if( isset($_POST['username']) ) { $username = $_POST['username']; } if( isset($_POST['password']) ) { $password = $_POST['password']; } if( isset($username) && isset($password) ) { //Attempt the login - input is cleaned in the function $result = validateLogin($username, $password); if( $result === true ) { //Re-load this page to ensure all cookies are set exec_header_redirect('forumLoginTest.php'); } else if( $result === false ) { echo("transaction=ERR_LOCKED_OUT"); } else { echo("transaction=ERR_STRIKE&value=$result"); } } else { echo("transaction=ERR_PARSE"); } } else { echo("transaction=ERR_NONE"); } ?> |
|
|
X vBulletin 3.8.12 by vBS Debug Information | |
---|---|
|
|
![]() |
|
Template Usage:
Phrase Groups Available:
|
Included Files:
Hooks Called:
|