IT/Delphi

델파이로 mssql 데이터베이스 데이터 가져오기

델파이로 mssql 콤포넌트를 사용해서 mssql 연결을 했습니다.

http://ljh3326.tistory.com/24 


연결한 디비에서 테이블의 필드값을 가져오는 거를 해보려 합니다.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
procedure GetFieldContents;
var
  qryTemp : TMSQuery;
begin
     qryTemp := TMSQuery.Create( nil );
     qryTemp.Connection := msConnection;
     qryTemp.FetchAll := True;
     try
       with qryTemp do
       begin
         close; sql.Clear;
         sql.text := ' select fieldnm1 from tablename ';
         Open;

         while not Eof do
         begin
           memo.Lines.Add(FieldByName('fieldnm1').AsString));
           next;
         end;

       end;
     finally
       qryTemp.Free;
     end;
end;
cs


1. TMSQuery컴포넌트 선언후 create를 합니다. 

2. 동적으로 create를 합니다. 할때 연결한 connetion을 가져옵니다.

3. sql에 쿼리를 넣고

4. Open해줍니다. 그리고 EndOfFile까지 while로 루프를 돌리면서

5. 메모 콤포넌트에 필드값을 뿌려줍니다.


아주 단순한 예제라 바로 이해가 되실겁니다.


'IT > Delphi' 카테고리의 다른 글

델파이로 mssql 데이터베이스 연결  (0) 2017.01.18
mssql 에서의 image필드를 파일로 만들기  (0) 2017.01.18
,
IT/PHP

[php게시판 만들기] db설계

이번시간에는 게시판 db를 설계해보려 합니다.

db는 mssql을 사용하도록 하겠습니다.


1
2
3
4
5
6
7
CREATE TABLE [dbo].[board](
    [idno] [numeric](180) IDENTITY(1,1NOT NULL,
    [title] [nvarchar](50NULL,
    [writer] [nvarchar](50NULL,
    [contents] [textNULL,
    [regdate] [datetimeNULL
ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]
cs

위와같이 간단하게 구성을 하겠습니다. 


idno는 게시판의 순번, title은 제목, writer는 글쓴이, contents는 내용, regdate는 등록일자입니다.


복잡한 기능 없이 글쓰기, 수정, 삭제만 하려 하기 때문에 위의 구조만 있어도 충분합니다.


,
IT/PHP

[php게시판 만들기] 로그인 화면 체크

이전 게시글에서 로그인 화면 구성을 하였습니다.

여기에서는 로그인 버튼을 눌렀을 때 아이디, 비밀번호를 검사하는 php 파일을 만들어 보려 합니다.

이전 글 : http://ljh3326.tistory.com/32


로그인 버튼을 클릭하면 기본적으로 1. 아이디, 비밀번호 입력 여부를 확인합니다.

그리고 2. 데이터베이스에 저장된 아이디와 비밀번호 일치여부를 확인하고

일치한다면 3. 로그인성공, 4.실패한다면 로그인 실패입니다.


1. 아이디, 비밀번호 입력을 하지 않았을 때.

2. 로그인 실패 하였을 때.


logincheck.php

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
</head>
 
<?php
session_start (); 
// 세션을 사용하기 위해 초기화
 
/* email, password가 post로 안넘어오면 exit*/
if(!isset($_POST['email']) || !isset($_POST['password'])) exit;
 
$id = $_POST['email'];
$pw = $_POST['password'];
 
/* email, password가 공백이면 exit*/
if ( ($id==''|| ($pw=='') ) {
  echo "<script>alert('아이디 또는 패스워드를 입력하여 주세요.');history.back();</script>";
  exit;
}
 
/* db연결 */
    include('dbcon.php');
 
/* db 조회, post로 받은 id, pw 일치하면 로그인 성공*/
    $query="select id, pw, nickname from infotest where id = '$id' and pw = '$pw' "
    $result=odbc_exec($conn$query); 
 
 
    $row=odbc_fetch_array($result);
 
    $nickname = $row["nickname"];
 
    // 한글사용
    $nickname = iconv("EUC-KR","UTF-8"$nickname);
 
 
    $recordcount = odbc_num_rows($result);
 
/* id, pw 일치하면 board.php호출 */
    if ( $recordcount == 1 ) 
    {
        $_SESSION['nickname'= $nickname;
// 세션에 nickname을 저장
// 이 세션은 웹브라우저가 종료될때까지 가지고 있는 값이다. 
// board.php등 다른 php파일에서 사용할거다.
// session_destroy (); 함수를 사용해도 세션이 없어진다. 보통 logout시 사용하는듯.
//      echo "<script>alert('성공');</script>";    
      echo "<script>location.href='board.php';</script>"
    }
    else /* id, pw 실패하면 이전화면 */
      echo "<script>alert('로그인 실패'); history.back(); </script>"
 
    odbc_free_result($result);
    odbc_close($conn);
 
 
?>
 
</html>
 
cs


위 logincheck.php 소스 역시 주석을 달아 놨기 때문에 보시면 이해가 가실겁니다.

위에 dbcon.php파일은 http://ljh3326.tistory.com/28 여기에서 보실 수 있습니다.

그리고 데이터베이스 구조는 다음시간에 짜도록 하겠습니다.



'IT > PHP' 카테고리의 다른 글

[php게시판 만들기] db설계  (1) 2017.01.23
[php게시판 만들기] 로그인 화면  (3) 2017.01.20
[php게시판 만들기] 게시판 전체 구조 설명  (0) 2017.01.19
[php게시판 만들기] xampp 설치  (0) 2017.01.19
php로 mssql 연결  (0) 2017.01.19
,

최근 댓글

최근 트랙백

알림

이 블로그는 구글에서 제공한 크롬에 최적화 되어있고, 네이버에서 제공한 나눔글꼴이 적용되어 있습니다.

링크

카운터

Today :
Yesterday :
Total :