웹마스터 팁
page_full_width" class="col-xs-12" |cond="$__Context->page_full_width">
외부프로그램에서 제로보드 xe 및 그누보드 회원 연동(로그인) 하기 - 초간단
2010.02.03 01:24
제로보드와 마찬가지로 url로 로그인 하는 방법이다.
http://www.hanistory.com/?mid=logincheck&user_id=아이디&password=패스워드&act=procMemberLogin
해당 주소로 접속하면 id/pw 가 맞을경우 "SUCCESS"를 표기한다.
이를 읽어오면 로그인 유무를 판단할수 있고
해당 모듈의 로그인 위젯에 회원정보가 표기되게 설정하면 회원정보까지 긁어올수 있다.
VB6.0 이라면 Inet 컨트롤이나 Wininet.dll 을 사용하여
위주소로 웹페이지 내용을 읽어 오면 된다.
닷넷으로는 WebRequest를 이용해 웹페이지를 읽어왔다.
Public Function GetUrl("ByVal sUrl As String) As String '+ '//서버인증 On Error GoTo ErrorMsg Dim myHttpWebRequest As HttpWebRequest = CType(WebRequest.Create(sUrl), HttpWebRequest) Dim myHttpWebResponse As HttpWebResponse = CType(myHttpWebRequest.GetResponse(), HttpWebResponse) Dim receiveStream As Stream = myHttpWebResponse.GetResponseStream() Dim encode As Encoding = System.Text.Encoding.GetEncoding("UTF-8") Dim readStream As New StreamReader(receiveStream, encode) Dim read(256) As [Char] Dim count As Integer = readStream.Read(read, 0, 256) GetUrl = "" '+ 'Dim strHtml As String = "" While count > 0 Dim str As New [String](read, 0, count) GetUrl &= str count = readStream.Read(read, 0, 256) End While 'readStream.Close() 'myHttpWebResponse.Close() Return GetUrl ErrorMsg: MsgBox("서버연결에 실패했습니다.") End End Function
'로그인 폼에서 Geturl() 호출
Private Sub OK_Click_1(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles OK.Click 'xe(로그인) Dim LoginUrl1 As String = "http://www.홈페이지.com/?mid=loguncheck" Dim LoginUrl2 As String = "&user_id=" + Username.Text + "&password=" + Password.Text Dim LoginUrl3 As String = "&act=procMemberLogin" '그누보드 로그인 'http://www.hanistory.com/g4/bbs/login_check.php?_POST[mb_id]=UserId&_POST[mb_password]=Password 'Dim LoginUrl1 As String = "http://www.홈페이지.com/bbs/login_check.php?" 'Dim LoginUrl2 As String = "_POST[mb_id]=" + Username.Text + "&_POST[mb_password]=" + Password.Text 'Dim LoginUrl3 As String = "&url=success" Dim LoginUrl As String = LoginUrl1 + LoginUrl2 + LoginUrl3 Dim UrlSource As String = GetUrl("LoginUrl) 'Debug.Print(LoginUrl) 'Debug.Print(GetUrl("LoginUrl) If InStr(UrlSource, "success") Then 'xe() Dim MemLevel As Integer = Val(Mid(UrlSource, InStr(UrlSource, "<dt>Level. ") + 11, 2)) '그누보드 'Dim MemLevel As String = GetUrl("LoginUrl1 + LoginUrl2 & "&url=index.php") 'Debug.Print("레벨" & MemLevel) If MemLevel >= 0 Then LogInCheck = True Me.Hide() frmMain.Show() Else MsgBox("사용권한이 없습니다.") LogInCheck = False End End If UserID = Username.Text UserPW = Password.Text Else MsgBox("사용자가 없거나 지정한 암호가 다릅니다.", , "로그인") Password.Select() SendKeys.Send("{Home}+{End}") End If End Sub
잘 안된다는 그누보드도 이방법으로 먹힌다.
단 그누보드는 루트의 common.php 의 아래부분을 주석처리 해야됨.
//================================================================= // extract($_GET); 명령으로 인해 page.php?_POST[var1]=data1&_POST[var2]=data2 와 같은 코드가 _POST 변수로 사용되는 것을 막음 // 081029 : letsgolee 님께서 도움 주셨습니다. //------------------------------------------------------------------------------------------------------------------ $ext_arr = array ('PHP_SELF', '_ENV', '_GET', '_POST', '_FILES', '_SERVER', '_COOKIE', '_SESSION', '_REQUEST', 'HTTP_ENV_VARS', 'HTTP_GET_VARS', '+ 'HTTP_POST_VARS', 'HTTP_POST_FILES', 'HTTP_SERVER_VARS', 'HTTP_COOKIE_VARS', 'HTTP_SESSION_VARS', 'GLOBALS'); $ext_cnt = count($ext_arr); /*for ($i=0; $i<$ext_cnt; $i++) { // GET 으로 선언된 전역변수가 있다면 unset() 시킴 //if (isset($_GET[$ext_arr[$i]])) unset($_GET[$ext_arr[$i]]); }*/ //=================================================================
제목 | 글쓴이 | 날짜 |
---|---|---|
확장변수에 회원정보를 넣어보자 [10] | 개돌 | 2009.06.30 |
회원가입후 1주일이 지나지 않은 계정에 한하여 탈퇴 제한하기 [1] | Arp | 2010.12.23 |
XE에서 설문조사시 비회원 참여하는 방법 있을까요? [1] | hellosamyoo | 2010.10.12 |
게시판에서 비회원 메일 주소 확인하기 | 똑디 | 2009.10.12 |
[생초보팁] 회원가입시 홈페이지 블로그주소 않나타내기 ㅋ [4] | 에혀라X | 2010.12.05 |
외부프로그램에서 제로보드 xe 및 그누보드 회원 연동(로그인) 하기 - 초간단 [1] | 한이73 | 2010.02.03 |
회원 기본정보 공개여부 및 정보변경 옵션으로 처리하기(Member Moudle) [18] | 대암지기 | 2008.03.04 |
새로운 회원가입 형식 - 이게 팁이 될 줄 모르겠네요. ^^ [20] | SeoSeungHyun | 2010.09.15 |
검정 배경 홈페이지용 회원 정보 스킨 | LutZ | 2010.08.03 |
외부에서 회원정보 불러오기 [5] | 미오유 | 2007.08.15 |
게시판 본문페이지 닉네임 옆에 회원그룹명 사용 [4] | 늘푸른이 | 2010.08.13 |
관리자에서 회원리스트(남성,여성리스트 분류해서 보기) [5] | 늘푸른이 | 2010.08.13 |
회원과 비회원 구분하여 출력하기 [6] | NEARSTORY | 2009.12.26 |
로그인한 회원만 최근 게시글, 검색등 볼수 있도록 하기 [3] | [_)s | 2008.12.31 |
회원 확장 변수(extra_vars) 출력하는 방법 [15] | 척~ | 2008.05.23 |
일반 회원이나 손님도, 제목의 글자색상 및 굵기 설정 가능하게. [1] | sejin7940 | 2010.07.14 |
레이아웃 자작시 생기는 회원 모듈과의 충돌 [1] | ZHANG™ | 2010.08.15 |
회원 정보 및 회원 리스트에 회원 성별 앞에 아이콘 넣기 [5] | 늘푸른이 | 2010.08.06 |
회원약관 추가 [7] | 애치티 | 2009.01.15 |
0.1.1 패치하시면 가입시 기본 회원 그룹 선택해야해요. [2] | 다케루 | 2007.08.26 |
홈페이지
그누보드와 XE 포인트 연동할수없나요?