일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 안드로이드
- WebView
- html5
- 설치
- android 효과음
- C# IO
- 안드로이드 푸쉬
- 안드로이드 gcm
- not working
- FCM
- javascript
- 폼메일
- UML
- dovecot
- 우분투
- PHP
- Android
- 자동 생성
- curl
- C#
- chart.js
- php 시큐어코딩
- mysql
- xe
- Mail Server
- 안드로이드 푸시
- soundpool
- php 취약점
- roundcube
- 자바스크립트
- Today
- Total
그러냐
[PHP] JSON 방식으로 Ajax 구현하기 본문
출처 : http://m.blog.naver.com/erzsamatory/220697714574
ERZSAMATORY WEBLOG에 작성된 내용을 정리한 글입니다. 원본 글은 다음 링크를 통하여 확인 가능합니다.
[jQuery] PHP를 이용하여 JSON 방식으로 Ajax를 구현하는 방법 알아보기
최근들어 웹사이트에서 Ajax 기술을 사용하는 것을 쉽게 볼 수 있습니다. Ajax는 동적인 웹페이지를 만들기 위한 기법 중 하나라고 생각하면 됩니다. 실시간으로 게시판의 글을 불러온다든지, 페이지 링크 없이 스크롤을 내리는 것만으로 새로운 글이 나타난다든지 하는 등의 웹페이지는 모두 Ajax로 구성되어 있다고 보면 됩니다.
기본적으로 Ajax(Asynchronous Javascript And XML) 기술을 구현하려면 서버측 웹 프로그래밍 언어와 자바스크립트를 사용할 수 있어야 합니다. 서버측 웹 프로그래밍 언어란 PHP, ASP, JSP와 같은 것을 말합니다. 이 글에서는 PHP를 이용하여 Ajax를 구현하는 방법에 대하여 알아볼 것입니다.
JSON(JavaScript Object Notation)은 인터넷에서 자료를 주고 받을 때 그 자료를 표현하는 방법입니다. 데이터 타입에 제한이 거의 없기 때문에 자바스크립트와 서버 간 데이터를 송수신할 때 사용하기에 매우 편리합니다. Ajax 기술은 데이터베이스로부터 배열 값을 가져와야 하는 경우가 많은데, JSON은 가공된 컴퓨터 변수를 표현하는 데 사실상 아무런 제약이 없기 때문에, Ajax 기술에서는 JSON이 가장 널리 사용되고 있습니다.
모든 서버측 웹 프로그래밍 언어에서 JSON 문서를 출력할 수 있지만, 이 글에서는 PHP에서 JSON 문서를 출력하는 방법에 대하여 알아보도록 하겠습니다.
PHP에서는 아래와 같은 방법으로 JSON 문서를 출력할 수 있습니다.
PHP에서 일반 데이터를 JSON 스트링으로 변환할 때 사용되는 함수는 json_encode()입니다. json_encode() 함수는 첫 번째 매개변수로 넘겨진 데이터를 JSON 스트링으로 변환합니다.
JSON 스트링을 만들기에 앞서, 우선적으로는 데이터베이스에 연결하여 테이블 데이터를 불러오거나, POST 또는 GET 값을 이용하여 데이터 처리를 하는 등의 각종 데이터를 가공하는 작업이 필요합니다. 이렇게 가공된 데이터를 json_encode() 함수에 전달하여 최종 결과물을 JSON 스트링으로 변환한 후, echo() 또는 print() 함수를 이용하여 변환된 JSON 스트링을 화면에 출력시키면 됩니다.
아래의 소스코드는 ① 데이터베이스 테이블에서 데이터를 가져온 후, ② 데이터베이스로부터 반환된 데이터를 객체 형태로 가공하고, ③ 이렇게 가공된 객체 데이터를 json_encode() 함수에 매개변수로 넘겨주고, ④ 변환된 JSON 스트링을 화면에 출력하는 예제입니다. (출처: ERZSAMATORY WEBLOG)
// 1. 데이터베이스에서 데이터를 가져옴 $link = mysqli_connect($host, $user, $password, $dbname); if ($result = mysqli_query($link, 'SELECT * FROM `temp`', MYSQLI_USE_RESULT)) { // 2. 데이터베이스로부터 반환된 데이터를 // 객체 형태로 가공함 $o = array(); while ($row = mysqli_fetch_object($result)) { $t = new stdClass(); $t->uid = $row->uid; $t->name = $row->name; $t->desc = $row->desc; $o[] = $t; unset($t); } } else { $o = array( 0 => 'empty'); } // 3, 4 최종 결과 데이터를 JSON 스트링으로 변환 후 출력
echo json_encode($o);
위 소스코드를 웹사이트에서 활용하는 방법은 원본 글에서 설명하고 있으니 한 번 참고해보시기 바랍니다.
http://www.erzsamatory.net/220
'php' 카테고리의 다른 글
php 폼메일 소스 mail() (0) | 2017.01.09 |
---|---|
strlen, strpos, strimwidth, substr, mb_strimwidth 길이 문제 (0) | 2016.11.16 |
html 테이블 자동줄바꿈 (0) | 2016.02.29 |
[함수] 간단한 암호화/복호화 함수 (0) | 2016.02.22 |
[알고리즘] 암호화/복호화 함수(실전 응용 가능) (0) | 2016.02.22 |