웹마스터 팁

제로보드와 마찬가지로 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]]);
}*/
//=================================================================

 

 

제목 글쓴이 날짜
리눅스에서 제로보드 xe를 위한 환경 구축하기 [6] 써니a 2007.08.18
외부프로그램에서 제로보드 xe 및 그누보드 회원 연동(로그인) 하기 - 초간단 [1] 한이73 2010.02.03
제로보드에서 아이프레임(iframe) 높이 자동조절(파폭,IE, 모두 작동) [10] HaruKaze 2009.03.17
티스토리에서 제로보드Xe 이전시 필독사항!! [1] file 2008.02.23
제로보드 첨부파일 [4] 아싸수리 2008.09.19
제로보드의 아이콘을 내 맘대로 변경하기...(2) [2] file winter548 2009.03.23
제로보드 권한 설정 문제요~~ [1] 매너굿남 2009.03.27
트위터와 구글톸을 이용한 제로보드XE 새글 알리미 구축하기 [2] 하우하우 2010.04.03
그동안 고심하던 제로보드 에디터 문제 해결되었음을 기쁜마음으로 알립니다. 유샤인 2010.06.07
외부페이지 접근을 제로보드XE를 통해서만 접근을 허용 하고 싶다면 [9] 임기택924 2008.06.03
드림위버에서 제로보드 XE 레이아웃 편집하기 [4] file 샤릉해 2009.02.10
주소창에 보이는 아이콘 넣기..제로보드 XE에서 [2] file 은바가지 2008.07.03
제로보드XE 가로 스크롤 문제 해결 방법 [7] digitalist 2008.11.12
제로보드XE F5 공격 취약점 [7] ONEONE 2010.02.01
초보자를 위한 제로보드에 애드온 프로그램 설치하기 강좌 이하늘690 2010.02.23
레이아웃의 자유도때문에 궂이 제로보드4를 사용하시려는 분들은... [7] 아카스 2010.02.03
제로보드(zbxe) 설치 후 로그인 안되는 문제. [3] sophistlv.myid.net 2008.10.15
제로보드4->XE 데이터 이전 시 회원 정보 오류 / 포인트 문제 [10] 개돌 2009.10.08
제로보드 XE - 1.3.x 설치부터 기본 홈페이지 만들기 스타호스트 2009.12.05
제로보드 매뉴얼 version 0.63 입니다. [16] file 윈매니아 2009.07.03