歡迎光臨, 訪客. 請先 登入註冊一個帳號.
十一月 12, 2024, 04:11:57 下午
19595 文章 在 3865 主題 由 4579 會員
最新註冊會員: aa123aa1
LifeType 中文開發論壇  |  開發  |  外掛程式  |  如何在用户注册验证成功后把数据同时插入到 « 上篇主題 下篇主題 »
頁: [1]
作者 主題: 如何在用户注册验证成功后把数据同时插入到  (閱讀 18136 次)
andywang
初級會員
**
文章: 93


檢視個人資料
« 於: 三月 16, 2005, 06:23:21 下午 »

我目前在博客注册的用户要登录我这里站点其他的系统,所以我想在注册的时候把用户注册信息同时写入oracle数据库,这样当在博客注册后,只要博客登录,那么我别的系统只要调用就是登录状态,我们的论坛系统已经实现了这个功能,但是不知道plog如何实现,我应该在那个文件里面写入oracle的配置链接信息并将数据插入。比较着急,请回答,谢谢!
已記錄
markwu
系統管理員
超級會員
*****
文章: 3928


Mark Wu


檢視個人資料 個人網站
« 回覆文章 #1 於: 三月 17, 2005, 12:01:04 上午 »

Hi Andy:

如我之前建議的,你必須去修改 summary 中的程式,多作一個 function,當收到 blogname, username 的 request 後,把他同時寫入到 oracle 中。這個部分你就可以不需要遵守 pLog 的架構了。建議看一下

/summary/class/action/dofinishregister.class.php 這一隻程式。

Mark
已記錄

Anonymous
訪客
« 回覆文章 #2 於: 三月 17, 2005, 01:53:33 下午 »

我现在需求是这样的,plog只是我的一个小系统,注册的时候我要首先判断我的网站用户通行证注册系统(oracle数据库)里面是否有plog表单提交用户名,如果有,而blog系统没,就把该用户信息插入到plog用户表里面,如果有不用注册了,直接登录;如果没有那么走plog注册系统的正常流程,然后在网站用户通行证注册系统(oracle数据库)里面插入相应用户信息;
  登录的时候首先判断cookie里面是否有别的系统登录信息,如果已经登录,要判断plog输入的用户名在网站用户通行证注册系统(oracle数据库)是否存在,如果不存在,接着判断plog系统里面是否存在,不存在就报告用户不存在,如果网站用户通行证注册系统(oracle数据库)存在而plog不存在,那么把该信息写入plog系统;如果plog系统存在而网站用户通行证注册系统(oracle数据库)不存在,那么就将该信息写入网站用户通行证注册系统(oracle数据库)。
   哈哈,这就是整个逻辑,涉及到注册和登录两部分,所以我感觉到dofinishregister的时候是不是晚了?
已記錄
markwu
系統管理員
超級會員
*****
文章: 3928


Mark Wu


檢視個人資料 個人網站
« 回覆文章 #3 於: 三月 21, 2005, 11:01:12 上午 »

那可能要改變作法。由你原有系統為主,那邊只要 user 願意使用 blog 的服務,按下確認後,你要來開通 pLog 這邊的用戶跟 blog 系統。這樣是比較對的作法。

而非 pLog 註冊後再寫入 Oracle。

Mark
已記錄

andywang
初級會員
**
文章: 93


檢視個人資料
« 回覆文章 #4 於: 三月 21, 2005, 01:13:10 下午 »

引用自: markwu
那可能要改變作法。由你原有系統為主,那邊只要 user 願意使用 blog 的服務,按下確認後,你要來開通 pLog 這邊的用戶跟 blog 系統。這樣是比較對的作法。

而非 pLog 註冊後再寫入 Oracle。

Mark


那现在咋们是怎么登陆的,靠session还是cookie认证?
已記錄
markwu
系統管理員
超級會員
*****
文章: 3928


Mark Wu


檢視個人資料 個人網站
« 回覆文章 #5 於: 三月 21, 2005, 01:28:25 下午 »

其實你的需求可已有機個作法:

1. 是你說的作法,但是做樣有點麻煩。因為你要盼對使用者是否在 Oracle 上註冊。如果為註冊,你還必須把資料回寫。

2. 所以我才建議用另一個方式。改寫你現有用戶表單。讓使用這選要不要啟用 blog 服務。如果要,就呼叫 pLog 的建立使用者的與網誌的物件(參考 doregisterfinish.class.php) 。這樣你的用戶是單向管控的。不需要雙向的整合都做。

我們預備另一個子 project 是用 LDAP 來管裡 pLog 使用者,以及提供 web service 的方式,讓其他程式來整合。

但這也是要等到 1.1 了。

Mark
已記錄

andywang
初級會員
**
文章: 93


檢視個人資料
« 回覆文章 #6 於: 三月 21, 2005, 03:41:49 下午 »

Mark
http://forum.lifetype.org.tw/index.php?topic=228.0
Mark
這一篇你看一下
Mark
http://forum.lifetype.org.tw/index.php?topic=228.0
Mark
對了
Mark
這個你看過了嗎?
Andy wang 说:
看了
Andy wang 说:
谢谢
Andy wang 说:
我的想法是很复杂
Andy wang 说:
但是这系统要上我不得不考虑系统互联的问题
Mark
所以
Andy wang 说:
因为别的系统里面现在有很多现成用户
Mark
我不建議你那樣
Mark
我才建議
Mark
加一個 checkbox
Mark
在上面
Mark
用戶要開通
Mark
你就去把資料寫入 pLog
Mark
這樣會比你原有作法簡單
Mark
而且不會讓兩編資料不一致
Mark
因為一定是你的用戶
Mark
才能開通 blog
Mark
這也是目前大部分的作法
Andy wang 说:
你的意思我自己去写数据库连接,自己写注册是吧
Mark
不是
Mark
是透過你的原來的程式
Mark
呼叫pLog 的註冊程式
Mark
doregisterfinish
Mark
這樣會比較簡單
Mark
而且不用擔心
Mark
在 blog 註冊的人
Mark
沒到 orcale 註冊
Andy wang 说:
哦,把那边用户信息带过来就行是吗,带到blog注册表单,以便进一步完善blog的注册信息,是这样吗
Mark
是的!
Mark
但是pLog 程式不需從寫
Mark
你要參考那一支程式來改
Mark
http://www.lifetype.net/forums/viewtopic.php?t=1864
Mark
你可以看一下這一篇
Mark
他是再討論 vbullitin 跟 plog 整合的作法
Andy wang 说:
原本想法是有些用户一上来就注册,他可能只玩blog,但是也有可能去oracle系统的,这样就麻烦了
Mark
我會建議你用我的方法會比較簡單
Mark
要不然
Mark
你程式會改不完
Andy wang 说:
我觉得你说的很好,这样即使以后新版本出来我不需要再大改了
Mark
你覺得呢
Mark
是的
Andy wang 说:
但是这个注册是单向的了
Mark
當然
Mark
這個就不叫註冊
Mark
而是原有會員開通 blog 服務
Andy wang 说:
如果用户一来就在blog注册,那信息就到不了oracle
Mark
所以不讓他從 pLog 註冊
Mark
他不能單註冊 pLog
Mark
一定必須先是你的會員
Mark
再開通 blog 服務
Mark
這樣你就不用擔心會員資料不一致
Mark
對吧!
Andy wang 说:
有道理,这是站点整合思路,降低注册复杂度
Mark
是!
Mark
而且
Mark
這樣的原來會員
Mark
也會常常回來
Mark
只要一回來
Mark
就有原來的服務
Mark
加上 blog
Mark
這樣是很貼心的服務
Andy wang 说:
我的想法实际上虽然以前在论坛实现了,但是这个思路用在任何系统都会导致复杂的改写,当新系统上来时,又导致改写程序
Mark
別把事情想得太複雜
Mark
是的
Mark
記住
Mark
註冊一定是單向
Mark
統一入口
Mark
但服務
Mark
可以很多種
Andy wang 说:
原本我们那个系统人比较少,想通过blog提升人气
Mark
別想得太複雜
Mark
那就是了
Andy wang 说:
所以我想如果把blog原来注册给去掉了,会导致只想玩blog的人不能顺利来
Mark
不不不
Mark
你誤會了!
Mark
是把入口統一到原來入口
Mark
但是
Mark
你當然可以把原來的註冊入口改漂亮
Mark
改簡單
Mark
這會比你多處入口
Mark
來的好
Andy wang 说:
明白,你现在实际上是把我原来多处注册这种机制去掉,就一个注册点,然后让用户选择开通服务,如果享受就进一步完善信息
Mark
要是照你原有想法
Mark
當有第三個系統加入
Mark
哪你就有三個入口
Mark
然後四個入口
Mark
最後
Mark
你只好放棄
Mark
因為太複雜
Mark
所以千萬別那麼做
Andy wang 说:
是的,我们现在有一个公用用户表(oracle系统),所有系统都向这个表写数据,然后子系统的用户表里面也有同步信息
Andy wang 说:
其实我感觉这种思路有缺陷的
Andy wang 说:
注册我清楚了,那登陆我们怎么做?
Mark
登入的問題比較大
Andy wang 说:
blog的登陆用什么机制,session还是cookie
Mark
因為有的用 session
Mark
有的用 cookie
Mark
建議全改用 session
Mark
在 plog 中是 session
Mark
但是不知你的其他系統是怎麼
Andy wang 说:
我们原来系统为了兼容都用得是cookie
Mark
瞭解
Mark
那這樣 pLog 這邊就要改不少了
Mark
不過
Andy wang 说:
是啊,头疼
Mark
可以跟註冊一樣
Mark
的作法
Mark
就是
Mark
你把登陸的入口改成同一個
Mark
然後
Mark
登陸驗證後
Mark
去呼叫 pLog 跟 forum 的登入程式
Mark
這樣 cookie 還是用 cookie
Mark
session 還是用 session
Mark
唯一要調整的是
Mark
expire 的時間了
Mark
把兩者調一致救成了
Andy wang 说:
plog的session在那里控制?
Mark

Mark
\pLog\class\net\http\session
Andy wang 说:
我可不可以在plog中加入cookie?
Mark
可以
Mark
只是這樣你程式必須要先看懂才能改了
Mark
我到現在
Andy wang 说:
也就是生成session的时候把cookie也生成
Mark
才只懂一半
Mark
當然可以
Andy wang 说:
那我就没法懂了
Andy wang 说:
要不是cookie,那别的系统登陆了这边没反应的
Mark
可是
Mark
plog
Andy wang 说:
你们没考虑加入cookie机制吗
Mark
session 會過期
Mark
這個要調整
Mark
目前沒有
Mark
這部分是 oscar 在管的
Andy wang 说:
因为一般不会独立架个blog的,可能还要与别的系统兼容
Mark
呵呵
Andy wang 说:
这个系统最初是oscar写的吗?
Mark
這就是要架的人得出力的地方了
Mark
我們總沒辦法事事考慮
Mark
他是PM
Andy wang 说:
唉,问题是你们把系统架构做的很复杂,不是谁想加东西就能加进去的
Mark
這是 Oscar 的架構
Mark
當初他的目的就是用 pLog 來練習 php 的 OO
Andy wang 说:
他太厉害了
Mark
是的
Andy wang 说:
说实在的,看这个系统我象看天书  
Mark
呵呵
Mark
我剛看耶是
Andy wang 说:
根本摸不着从那里下手
Mark
所以我才說
Mark
你要慢慢看
Andy wang 说:
对了,我就是oracle那边做了注册开通系统,怎么把用户表单信息传递给plog,它才能认
Mark
這不能能速成
Andy wang 说:
4.1要上线
Mark
那沒辦法拉
Mark
沒經過測試
Mark
呵呵!
Mark
很容易出錯的!
Mark
Oracle 那邊也是用 PHP 嗎?
Mark
最簡單的方式
Mark
就是你研究一下
Mark
註冊後會寫入的資料
Mark
然後
Mark
在 oracle那邊
直接寫入DB
Mark
pLOg DB
Mark
那就不用呼叫pLog
Mark
這更簡單
Mark
是的
Andy wang 说:

Andy wang 说:
那咋们注册要写users表,还有什么?
Mark
這你要研究一下了
Mark
我也不清楚
Mark
那邊我沒研究
Andy wang 说:
我曾经试图从后台插入了数据,似乎登陆不认可
Mark
呵呵
Mark
應該是可以的
Mark
你要試試看了
Andy wang 说:
好,我再看看  
Mark
如果可以
Mark
你想一下
Mark
把我們討論後
Mark
你覺得可行的作法
Mark
post 到論壇那個文章
Andy wang 说:

Mark
畢竟可能有其他人想知道

Andy wang 说:
是的这个问题是个关键问题,很有很多人遇到的
Andy wang 说:
但是这样注册用户无法登陆
Andy wang 说:
报告 :对不起,您尚未加入任何博客。
Mark
不光 user  啦
Mark
還有 blog name
Andy wang 说:
是啊,那如果它自己创建blog name就有问题了
Mark

Mark
你的註冊的登入口
Mark
當然還要讓他可以打入blog name 阿!
Mark
呵呵
Andy wang 说:
可以让把所有博客名都列出来让它选择
Mark
你看
Mark
doregisterfinish
Mark
裡面是
Mark
create user
Andy wang 说:
或者就是你说的打出来让自己写
Mark
creat blog
Mark
對吧!
Andy wang 说:
明白了,。对这个思路很好
Andy wang 说:
对,列出已有博客名,让它去选择,这是方法一;还有就是自己写,方法二,对,就这么着,妙!
Mark
這方法不好
Mark
讓他自己寫把
Mark
你讓他選
Mark
那你得準備多少阿!
Andy wang 说:
读取plog的blog名啊
Andy wang 说:
你的意思太多是吧?
Andy wang 说:
也是,可能几百个就没法选择了
Mark
是的
Andy wang 说:
不过我们原本不是完全开放主题的博客
Andy wang 说:
我们要跟我们的业务挂钩,想把博客名作个限制,等于分类了
Andy wang 说:
也不分实现了你们文章没有分类的逻辑处理
Mark
你把 blog name
Mark
跟 blog category 搞混了
Mark
blog name 可以叫做 ABC
Andy wang 说:
 
Mark
但是 blog category 只有政治
Mark
或是經濟
Mark
藝術等等
Mark
可以選
Andy wang 说:
对对,是搞混了
Andy wang 说:
我建议你和Oscar协商一下,赶紧推出文章分类功能
Andy wang 说:
这估计是架站用户最关心的问题,因为这样一个blog有主题分类,也好吸引人,要不都不知道这个blog的优势和特色在哪里?
Andy wang 说:
可以,只要插入两个表的某些字段就可以了


Mark
恭喜
Andy wang 说:
然后其它的让登陆去完善
Andy wang 说:
包括模板,文章分类等


具体就是只要在别的系统把用户表users中插入user,pssword,email就可以,在blogs表中插入blog,owner_id就可以了,这样就能实现基本登陆了,别的信息在用户登陆后再完善。
已記錄
andywang
初級會員
**
文章: 93


檢視個人資料
« 回覆文章 #7 於: 三月 21, 2005, 03:44:08 下午 »

http://www.lifetype.net/forums/viewtopic.php?t=1864
已記錄
頁: [1]
LifeType 中文開發論壇  |  開發  |  外掛程式  |  如何在用户注册验证成功后把数据同时插入到 « 上篇主題 下篇主題 »
    前往: