Facebook & Twitter

I like most people here, would not use a social network to sign up to any website... i'd rather use an email address, HOWEVER, some people do use them.

So, i am just about to start integrating the Facebook and Twitter Sign Up APIs into my site, however i have a few questions.

1 - how do these work, what is the general process involved (what happens when they choose once of these methods)
2 - once a user signs up with one of the apis, is their info (such as first name, last name, email address) pulled from the Facebook or Twitter database, then saved in my database
3 - if i need to display some of the users details on my site (such as first name), where will the site be pulling the details from, my database or the social network database

Thanks in advance to any help you can give on any of the above questions

1. OAuth. Look it up. Short version: your server gets a token from their site, redirects the user to a special page on their site, they log in, and the user is sent back to your server.
2. Not automatically. You have to use their APIs to get whatever information you want.
3. Either.

So, if i pull data from the social database to my site database, and the user updates their data on the social network, surely that would cause a problem... sorry just trying to see how these could be broken

Yep, it could cause problems. Whether you cache data and how often you refresh it depends on your needs. Like if it's an occasional thing then you probably don't need to remember it, but for something like a name or email address you'll probably want to save yourself from the tons of API calls every time you need them.

So, if i pull data from the social database to my site database, and the user updates their data on the social network, surely that would cause a problem... sorry just trying to see how these could be broken

True, which may be a reason to just query the API to always have their most up to date information. You could also just have some sort of time limit, ie save their name to your database for 4 hours and after that point query the API to make sure the name is still up to date.