Automatic Forum account creation

I’m not sure if you can automatically log-in, since phpBB does send a confirmation link until they are activated

Hello,

the user is activated, thats not the Problem.

Its only the automatic login.

Matthias

Hi Matthias, i have tried your code above and its not working for some reason, any ideas?

For them moment i need a code that a user ( i have created or alway is in the phpBB3 Database ) is automaticly logged in after he clicked a link to reach the Forum.

I have searched in the php Forum , but nothin found.

Can anyone help about this ?

Matthias

I remember seeing the code for this on the forums in phpbb3 mods, when you login to say phpvms you are logged in at the same time to the forum, its there somewhere because i came across it looking for the code above.

Hi Matthias, i have tried your code above and its not working for some reason, any ideas?

Hello,

whats the Problem exactly with the code ?

Any Error Messages ?

( i must go to work now … but i will try to answer )

Matthias

I remember seeing the code for this on the forums in phpbb3 mods, when you login to say phpvms you are logged in at the same time to the forum, its there somewhere because i came across it looking for the code above.

Thanks for answer.

Where have you see the code for automated login in phpBB Forum ?

Have you a link for me ?

I have nothing found.

Matthias

Right i have made a couple of changes, so now the code will register firstname lastname and pilot number, however for some reason it inserts in to the table ok but doesn’t correctly register the new account as type 2 even though its in the script, users can log in but they are not registered properly for some reason.

Im looking for you other code now, will post here when i find it.

For usertype its ‘2’, try doing 2 without the quotes

Hello again,

i have the next Problem :

I have now changed the core_navigation template and have here a Link “Forum”

to core/modules/forum/login.php

login.php is my automatic login script to phpBB3.

Here i need the Pilot ID and password and thats the Problem.

i can not take a link to the login.php eg

core..login.php?pilotID=STF0001&password=userpassword :slight_smile:

so all can see the password.

What can i do ?

Sessions ?

But i need help here. I have no expirience about php and sessions.

Or how can i change the Link eg. to

/index.php/ForumLogin as example ?

same as the other navigation links eg. Pilots as /index.php/pilots ?

How can i do this ?

Matthias

Err, passing in the password?

You can access the logged in userdata as:

Auth::$userinfo->email, Auth::$userinfo->password, etc

Hello,

yes, but as i sayd, i will not do something like that :

core/modules/forum/login.php?pilotID=STF0001&password=userpassword

to call the automatic login script.

I will hidde the part with username an password.

Matthias

Hi Guys sorry to keep banging on about this thread but i have managed to get this to work for SMF forums, the only problem i have is i want to put a space in the username of the forum, currently when someone registers it registers the following, flrstnamelastnamegtsxxx what i want is firstname lastname gtsxxx but im unsure how to put a space between the code i have to get the values,

$pilot_id = $fname.$lname.$code.$pilot_id;

Hope you know what im trying to say.

Thanks

$pilot_id = $fname.' '.$lname.' '.$code.$pilot_id;

To get the properly formatted pilot ID (with the proper # of zeros, etc), call:

$pilot_id = PilotData::GetPilotCode($code, $pilot_id);
$pilot_id = $fname .' '.$lname. ' ' . $pilot_id;

Though I’m not sure if you’re still “inside” phpVMS to be able to access the PilotData class.

Right guys, i thought id post my code, now i got to tell you i have no experience in coding, so i make no excuses now.

This is what im using to interface with phpVMS, i have a few settings in the forum as well for this to work, you must have admin approval set in the forum this is a good idea as it stops nasty people registering on your forum and spamming.

I have also created another user group “pilots” which is why you see group id 9, the normal registered user group in 2.

Like i said im no coder but this works for me.

Must also mention that both databases are in one, if yours are separate then just connect before. SMF users just rename the php_users to your members table and change other settings as required.

<?php
class ForumRegister extends CodonModule
{
   
  public function __construct()
  {
      CodonEvent::addListener('ForumRegister');
  }
   
  public function EventListener($eventinfo)
  {
      if($eventinfo[0] == 'registration_complete')
      { 

$userinfo = $eventinfo[2];


$fname = $userinfo['firstname'];
$lname = $userinfo['lastname'];
$pass = $userinfo['password1'];
$email = $userinfo['email'];
$code = $userinfo['code'];

//mysql_query("INSERT INTO phpbb_users (username, user_password, group_id, user_timezone, user_dst, user_lang, user_type, user_actkey, user_dateformat, user_style, user_regdate) VALUES ($userr, $pass, '2','1.0', '0','en','0','','d M Y H:i', '1', time())");

$get_uinfo = mysql_query("SELECT * FROM phpvms_pilots WHERE firstname='".$fname."' AND lastname='".$lname."' AND email='".$email."'");
echo "Result Select: ".mysql_error()."<br>";
$uinfo = mysql_fetch_array( $get_uinfo );


//echo "Uinfo: ".$uinfo['pilotid'];
$str = $uinfo['pilotid'];
$pilot_id = str_pad ($str,4,"0",STR_PAD_LEFT);
$pilot_id = $fname.$lname.$code.$pilot_id; 
$pilot_id_klein = strtolower($pilot_id);
//echo "Pass: ".$pass."<br>";
$passMD5 = md5($pass);
//echo "Pass MD5: ".$passMD5."<br>";

echo "PilotID: ".$str."<br>";
$tm = time();

mysql_query("INSERT INTO phpbb_users (username, username_clean, user_password, user_email, group_id, user_timezone, user_dst, user_rank, user_lang, user_colour, user_type, user_actkey, user_dateformat, user_style, user_regdate) VALUES ('".$pilot_id."', '".$pilot_id_klein."', '".$passMD5."', '".$email."', '9','0.0', '0', '2','en','0099FF','1','5BN4938HB2','D M d, Y g:i a', '2', '".$tm."')");

//mysql_query("INSERT INTO phpbb_users (username, user_password) VALUES ('".$pilot_id."', '".md5($userinfo['password'])."')");


//echo "Result: ".mysql_error()."<br>";
//print_r($userinfo);

         


      }
  }

}
?>

Must also mention that both databases are in one, if yours are separate then just connect before. SMF users just rename the php_users to your members table and change other settings as required.

Wait, what? Are you renaming tables?

No no… if you use phpbb then the members tables are phpbb_users and smf they are smf_users , i think, no phpvms tables are renamed

Oh ok… read it wrong. Yeah, don’t rename tables lol

Ahhh! theres so much code im getting confused Can you include it in the next update or kindly write a step by step guide on where and what codes to put in  ;D

So to get this to work we just need to add this into the registering form that is on phpvms right? Do we somehow add it to the submit link/button?

I think if I read it right that code goes in a new module called ForumRegister

That would be great if this works, I use SMF also.