Go Back   vb.org Archive > vBulletin 4 Discussion > vB4 Programming Discussions
FAQ Community Calendar Today's Posts Search

 
 
Thread Tools Display Modes
Prev Previous Post   Next Post Next
  #1  
Old 07-30-2012, 10:59 AM
warmarks warmarks is offline
 
Join Date: Jul 2012
Posts: 6
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default Automatic Account creation Error Handling & Usergroup Updating

Hi,

Thanks for the great support and codes.
I have this code from another thread which is working great adding new account
automatically.

PHP Code:
<?php
define
('VB_AREA''External'); 
define('SKIP_SESSIONCREATE'1); 
define('SKIP_USERINFO'1); 
define('CWD''/home--path'); 
require_once(
CWD '/includes/init.php'); 
// Data from Form Submision for VB

$username $_GET["username"];
$password $_GET["password"];
$email  $_GET["email"];
$usrgrp $_GET["usergroupid"];


$newuser =& datamanager_init('User'$vbulletinERRTYPE_ARRAY); 
$newuser->set('username'$username); 
$newuser->set('email'$email); 
$newuser->set('password'$password); 
$newuser->set('usergroupid'$usrgrp);  



    
$newuser->pre_save();
        if(empty(
$newuser->errors)){
$newuserid $newuser->save();
echo 
"congratulations you are added <br>
Please note: <br>your username: <b>"
.$username."</b>
<br>Your Passowrd: <b>"
.$password."</b>";


        
    }
//assuming errors[0] is email already exist
//and errors[1] is username already exist

elseif(!empty($newuser->errors[0])){

//update usergroup to $usrgrp
echo "email already in use.. please login here";}


elseif(empty(
$newuser->errors[0] && !empty($newuser->errors[1]))
{  
echo 
"username already taken by some other
user please try with new username"
;

}




I just stuck with error handling..
i.e. there could be two types of errors..

1. Email is already in use.. that means this user is already registered !

in that case i want to add him to additional usergroup

2. Username already exists... but Email does not in use,
that means user need to choose some other USERNAME,
in that take to form again to ask to choose different username..

I am stuck on #1 above.. as in errors
$newuser->errors

how can i make sure that if
$newuser->errors[0] is error case #1 or #2
$newuser->errors[1] is error case #1 or #2


Ideally it would be great if i could have

$newuser->errors['email'] that means email already exists but not username, error case #1 above.

$newuser->errors['username'] that means username already exists error case #2 above.


Maybe i am approaching it wrong, i am very new to VBulletin.. hope you can guide me



Thanks
Reply With Quote
 


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT. The time now is 02:40 AM.


Powered by vBulletin® Version 3.8.12 by vBS
Copyright ©2000 - 2025, vBulletin Solutions Inc.
X vBulletin 3.8.12 by vBS Debug Information
  • Page Generation 0.04134 seconds
  • Memory Usage 2,389KB
  • Queries Executed 12 (?)
More Information
Template Usage:
  • (1)SHOWTHREAD
  • (1)ad_footer_end
  • (1)ad_footer_start
  • (1)ad_header_end
  • (1)ad_header_logo
  • (1)ad_navbar_below
  • (1)ad_showthread_beforeqr
  • (3)bbcode_php
  • (1)footer
  • (1)forumjump
  • (1)forumrules
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (1)navbar
  • (3)navbar_link
  • (120)option
  • (5)post_thanks_box
  • (5)post_thanks_button
  • (1)post_thanks_javascript
  • (1)post_thanks_navbar_search
  • (5)post_thanks_postbit_info
  • (5)postbit
  • (5)postbit_onlinestatus
  • (5)postbit_wrapper
  • (1)showthread_list
  • (1)spacer_close
  • (1)spacer_open
  • (1)tagbit_wrapper 

Phrase Groups Available:
  • global
  • inlinemod
  • postbit
  • posting
  • reputationlevel
  • showthread
Included Files:
  • ./showthread.php
  • ./global.php
  • ./includes/init.php
  • ./includes/class_core.php
  • ./includes/config.php
  • ./includes/functions.php
  • ./includes/class_hook.php
  • ./includes/modsystem_functions.php
  • ./includes/functions_bigthree.php
  • ./includes/class_postbit.php
  • ./includes/class_bbcode.php
  • ./includes/functions_reputation.php
  • ./includes/functions_threadedmode.php
  • ./includes/functions_post_thanks.php 

Hooks Called:
  • init_startup
  • init_startup_session_setup_start
  • init_startup_session_setup_complete
  • cache_permissions
  • fetch_postinfo_query
  • fetch_postinfo
  • fetch_threadinfo_query
  • fetch_threadinfo
  • fetch_foruminfo
  • style_fetch
  • cache_templates
  • global_start
  • parse_templates
  • global_setup_complete
  • showthread_start
  • showthread_getinfo
  • forumjump
  • showthread_post_start
  • showthread_query_postids_threaded
  • showthread_threaded_construct_link
  • showthread_query
  • bbcode_fetch_tags
  • bbcode_create
  • showthread_postbit_create
  • postbit_factory
  • postbit_display_start
  • post_thanks_function_post_thanks_off_start
  • post_thanks_function_post_thanks_off_end
  • post_thanks_function_fetch_thanks_start
  • post_thanks_function_fetch_thanks_end
  • post_thanks_function_thanked_already_start
  • post_thanks_function_thanked_already_end
  • fetch_musername
  • postbit_imicons
  • bbcode_parse_start
  • bbcode_parse_complete_precache
  • bbcode_parse_complete
  • postbit_display_complete
  • post_thanks_function_can_thank_this_post_start
  • tag_fetchbit_complete
  • forumrules
  • navbits
  • navbits_complete
  • showthread_complete