PDA

View Full Version : Using another table to store user info (passwords)


linuxguy
02-20-2006, 10:26 AM
Hello VBers,

Here's the situation: We have a site with thousands of members on it, with our own custom PHP / MySQL application. Obviously, all these users already have passwords and usernames.

My goal is simple: add a VB forum, and let these users access that forum with their existing accounts. VB will be a part of their overall experience.

This seems like it shouldn't be too hard, and I am an experienced PHP coder. Does anyone have some suggestions of where to start in modifying VB for this?

Thanks

Well, looking at the source code, I did this:

find forum -name \*.php -exec grep -H -i 'table_prefix . "user' {} \;

and found that the user table is being accessed directly from all over the place. I would need to change every single one of those places to use my other table as the user table. That's probably more trouble than it is worth. I think what I'll do is modify the application to simply copy its user data over into VB's user table, and also update VB's user table when passwords change, etc. Then I'll remove VB's user signup and profile modification abilities, so all signups will have to go through our existing application.

Ah, this is a bit of a pain and a hack. I'm very open to other suggestions.

Reeve of shinra
02-20-2006, 02:21 PM
Common problem... but you hit the nail on the head in its difficulty.

While I haven't had a need to do this myself, the two common suggested solutions are:

a) hack either the forums or your sites log in script to update both sets of tables when changes are made

b) hack your site to use the vbulletin user table instead.

This is a little beyond my skills but there is a basic soap framework floating around here somewhere that you might be of some use to you.

linuxguy
02-21-2006, 06:39 AM
Common problem... but you hit the nail on the head in its difficulty.

While I haven't had a need to do this myself, the two common suggested solutions are:

a) hack either the forums or your sites log in script to update both sets of tables when changes are made

b) hack your site to use the vbulletin user table instead.


That is unfortunate. Basically ALL systems that use authentication use plugable authentication methods these days. Linux PAM for example allows you to write an auth module that queries from /etc/passwd or from a database or over NIS or anything. VB should be the same way.

Oh well, it looks like it will be easier to modify my existing app to use VB's table than the other way around. Users really do expect seemless integration. Users are annoyed with having so many passwords and usernames to remember, and having TWO sign-ons on the same website is not acceptable these days.

VB should refactor its code to get rid of this problem.