| 标题 | ecshop集成新浪微博登录插件教程分享 |
| 范文 | 近网站想添加新浪微博登录功能,于是在网上搜索了下,下载了一个插件的放我网站里面没效果,所以觉定自己动手试试,本人php新手说得不到之处还望大侠高手们多多指教。 1.先去http://open.weibo.com/ 这里申请app 2.下载最新http://code.google.com/p/libweibo/downloads/list插件包 2.1其中需要修改config.php文件 define( wb_akey , '申请的到的key ); define( wb_skey , '相对应的app secret' ); define( wb_callback_url , 'http://域名/login/callback.php' ); 2.2 修改文件callback.php ,将此处代码复制全部替换 <?php session_start(); define('in_ecs', true); require('../includes/init.php'); include_once('../includes/lib_transaction.php'); include_once('../includes/lib_passport.php'); include_once( 'config.php' ); include_once( 'saetv2.ex.class.php' ); $o = new saetoauthv2( wb_akey , wb_skey ); if (isset($_request['code'])) { $keys = array(); $keys['code'] = $_request['code']; $keys['redirect_uri'] = wb_callback_url; try { $token = $o->getaccesstoken( 'code', $keys ) ; } catch (oauthexception $e) { } } if ($token) { $_session['token'] = $token; setcookie( 'weibojs_'.$o->client_id, http_build_query($token) ); $c = new saetclientv2( wb_akey , wb_skey , $_session['token']['access_token'] ); $ms = $c->home_timeline(); // done $uid_get = $c->get_uid(); $uid = $uid_get['uid']; $user_message = $c->show_user_by_id( $uid);//根据id获取用户等基本信息 function check_user($username){ $sql = select user_id, password, salt . from . $globals['ecs']->table(users). where user_name='$username'; $row = $globals['db']->getrow($sql); if (!empty($row)){ return true; }else{ return false; } } if($user_message['screen_name']!==){ //获取微薄昵称 $username=$user_message['screen_name']; $password=time();//随便弄个密码 反正没有用 $email='123456@163.com';//随便默认个邮箱 $back_act =/user.php; if (check_user($username)!==false){ $globals['user']->set_session($username); $globals['user']->set_cookie($username); header(location: /user.phpn); //验证成功,跳转页面 exit; }else{ $reg_date = time(); $password =md5($password); $ip=real_ip(); $globals['db']->query('insert into ' . $globals['ecs']->table(users) . (`email`, `user_name`, `password`, `reg_time`, `last_login`, `last_ip`) values ('$email', '$username', '$password', '$reg_date', '$reg_date', '$ip')); $globals['user']->set_session($username); $globals['user']->set_cookie($username); header(location: /user.phpn); exit; } }else{ echo 'fail'; exit; } ?> <?php } else { ?> 授权失败。 <?php } ?> 修改的就这两文件,其中weibolist.php可以删除。 3.然后将config.php、callback.php、index.php、saetv2.ex.class.php四个文件放login文件夹上传空间就行了。 到这基本就完成了功能了,希望对有需要的站长有所帮助。 |
| 随便看 |
|
在线学习网范文大全提供好词好句、学习总结、工作总结、演讲稿等写作素材及范文模板,是学习及工作的有利工具。