已知账户密码,如何用php编写代码post(账号密码)到我的youbbs网站实现自动登录

By 叶小旭 at 2013-12-23 16:44:16 • 1201次点击

我最近在做youbbs连接微信平台,论坛已经建好了,但是我想在微信端通过跳转链接到论坛实现自动登录(给定账号密码),账号密码是我模拟登录微信平台获取他用户名等来自动注册论坛会员的(这一步已实现),现在就不知道如何实现会员的自动登录。。。往高手解答一下,这方案可行不,如何写?

账户, 密码, php, 代码, post, 账号, youbbs, 网站


没看过微信平台,不太了解,在youbbs 这端做点改变,建议单独开一个通道(网址)

复制/login.php ,重命名,如 /loginweixin.php

对 loginweixin.php 的修改:

首先是去掉验证码“seccode”,其次是改变来路识别,下面这段是识别来路的代码

if(empty($_SERVER['HTTP_REFERER']) || $_POST['formhash'] != formhash() || preg_replace("/https?:\/\/([^\:\/]+).*/i", "\\1", $_SERVER['HTTP_REFERER']) !== preg_replace("/([^\:]+).*/", "\\1", $_SERVER['HTTP_HOST'])) {
    	exit('403: unknown referer.');
    }

可改为针对微信来路的验证,嫌麻烦就直接去掉。

这样应该可以,只需接收post 过来的两个变量“name”和“pw”。

youbbs at 2013-12-23 17:06:39
1

谢谢你的解答,但是我有点不明白你的意思,你说的单独建一个通道是什么意思?是让我把代码部署到版本的外面?我用的是bae的1.5版本,我按照你的方法,不管是打开(网址/loginweixin.php)还是打开(网址/loginweixin)都是出现404错误,貌似是bae rewrite的结果,这该怎么办?我的想法是通过微信端返回用户一个链接(网址/loginweixin.php?name="xxx"&pw="xxx")实现自动登录,这方法可行么?或者在外面再建一个页面,使用户点击确认按钮就post 用户名和密码到论坛实现登录,第二种方法我尝试了很久,都不得成功,不知道怎么外部跳转链接过来

叶小旭 at 2013-12-23 18:37:19
2
叶小旭 at 2013-12-23 18:37:54
3

@youbbs 你知道如何实现么

叶小旭 at 2013-12-23 18:39:17
4

@叶小旭

单独建立一个通道: 给微信用户一个专用的网址,如 /loginweixin (需要作重定向)

若使用 /loginweixin.php?name="xxx"&pw="xxx" 的方式登录则需要修改 /loginweixin.php 文件,
去掉 $_SERVER['REQUEST_METHOD'] == 'POST' 的判断,
把 $_POST 改为 $_GET 来获取参数。

youbbs at 2013-12-23 19:47:39
5

@youbbs 能具体问下,如何重定向成/loginweixin.php么?现在打开是404错误,百度了一下重定向也不知道如何做啊

叶小旭 at 2013-12-23 20:24:14
6

@叶小旭 app.conf
添加一条

- url : ^\/loginweixin$
    script : loginweixin.php

youbbs at 2013-12-23 22:52:10
7

@youbbs 恩谢谢,我已经实现了

叶小旭 at 2013-12-24 00:49:52
8
登录 后发表评论