私のアプリケーションでは、次のような構造の「ユーザー」テーブルがあります。ソーシャルログインの実装のためのデータベース構造?
CREATE TABLE IF NOT EXISTS `users` (
`userId` int(10) unsigned NOT NULL auto_increment,
`username` varchar(128) NOT NULL default '',
`password` varchar(32) NOT NULL default '',
`email` text NOT NULL,
`newsletter` tinyint(1) NOT NULL default '0',
`banned` enum('yes','no') NOT NULL default 'no',
`admin` enum('yes','no') NOT NULL default 'no',
`signup_ip` varchar(20) NOT NULL default '',
`activation_key` varchar(60) NOT NULL default '',
`resetpassword_key` varchar(60) NOT NULL default '',
`createdon` datetime NOT NULL default '0000-00-00 00:00:00',
PRIMARY KEY (`userId`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=27 ;
私はStatckOverflowがやったように、私のアプリケーションでFacebookやTwitterとのOpenIDを経て、社会的ログインを実装したいです。 dbで必要となるすべての変更と、既存のログイン機能と一緒にPHPでロジックがどのように実装されるかを教えてください。
ありがとうございます!
FacebookとTwitterのユーザーが同じキーを持つ場合はどうなりますか? –
ProviderTypeを使ってそれらを区別することができます –
@EjazKarim、これらのキーはシーケンシャルではないので、TwitterのデータベースにFacebookのデータベースと同じユーザーキーがある場合、私たちは実行を開始できます。 – Machado