following code place earlier plus example of code for the curl call in php
STEP I
this file need to to be placed in the forum directory of vbulletin
(make sure it is in this directory to initialise vbulletin stuff ......)
no change done from previous poster
you can include the code below in one php page. call it whatever you want
i call it great_stuff_dude.php
thus i need to MAKE sure that the name of the page is correctly entered
in the define below
define('THIS_SCRIPT', 'GREAT_STUFF_DUDE.php');
do the same in the code below
----------------------------------------------------------------------
<?php
# Add a user to vBulletin (offline)
function qpc_post($varname)
{
return trim(stripslashes((get_magic_quotes_gpc()) ? $_POST[$varname] : addslashes($_POST[$varname])));
}
define('THIS_SCRIPT', 'GREAT_STUFF_DUDE.php');
require_once('./global.php');
require_once('./includes/class_dm.php');
require_once('./includes/class_dm_user.php');
$userdm = new vB_DataManager_User($vbulletin, ERRTYPE_ARRAY);
$userdm->set('username', qpc_post('username'));
$userdm->set('email', qpc_post('email'));
$userdm->set('password', qpc_post('password'));
$userdm->set('usergroupid',qpc_post('usergroupid'));
$userdm->set('ipaddress', qpc_post('ipaddress'));
$userdm->set('referrerid', qpc_post('referrername'));
$userdm->set('timezoneoffset', qpc_post('timezoneoffset'));
$userdm->set_bitfield('options', 'adminemail', intval(qpc_post('adminemail')));
$userdm->set_bitfield('options', 'showemail', intval(qpc_post('showemail')));
$dst_setting = intval(qpc_post('dst'));
switch ($dst_setting)
{
case 0:
case 1:
$userdm->set_bitfield('options', 'dstonoff', $dst_setting);
break;
case 2:
$userdm->set_bitfield('options', 'dstauto', 1);
break;
}
#If there are errors (eMail not set, eMail banned, Username taken, etc.) you can check for errors using
if (count($userdm->errors)) {
for($i=0; $i<count($userdm->errors); $i++) {
print "ERROR{$i}:{$userdm->errors[$i]}\n";
}
} else {
# If everything is OK
$newuserid = $userdm->save();
print "vbuserid:$newuserid\n";
}
?>
-------------------------------------------------------------------
STEP II
You can have the following code on server running PHP WHEREVER YOU WANT. it does not need to be on the same domain as long as you have the curl compiled
in that script (again call it whatever you want it does not matter)
you call the url of your web server and path to go to the page GREAT_STUFF_DUDE.php
you can of course include it in the login code of your CMS to create profiles in both systems in one step.
-------------------------------------------------------------------
<?php
$url="http://www.mysite.com/vbulletin3000/GREAT_STUFF_DUDE.php";
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt ($ch, CURLOPT_POST, 1);
curl_setopt ($ch, CURLOPT_POSTFIELDS, "username=keith_mayass&email=keith_mayass@no_worry s.com&password=up_yours&usergroupid=2&");
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
$store = curl_exec ($ch);
$content = curl_exec ($ch); # This returns HTML
curl_close ($ch);
?>
---------------------------------------------------------
you can of course pass as may variables as you want if you have them available in your CMS to complete the profile.
like
parentemail
showbirthday
homepage
icq
aim
yahoo
msn
skype
usertitle
customtitle
birthday
__-----__________------___
Ni vu ni connu, jt' embrouille
|