CI 묻고 답하기

제목 게시판 만들기 질문입니다.
글쓴이 방문넷 작성시각 2012/12/17 01:36:06
댓글 : 8 추천 : 0 스크랩 : 0 조회수 : 38308   RSS
controller -> board.php
model -> bbs.php
view -> view.php
             list.php
             write.php

로 구성하여서 게시판 만들기 공부하고있습니다 지금은 검증이고 뭐고없이 단순히 쿼리 날려서 데이타 가져오고 뿌려주고 view화면 보는걸로만 해둔상태입니다( 나중에 기능추가하고 좀더 명확하게 공부할려고 기본기능부터 익히는중입니다)

다름이 아니오라 memo 프로그램 보고 20분만에 블로그 만들기 보면서 게시판 만들기 혼자 나름 열씸히 해보는중인데요

글쓰기 할때 제게 난관의 봉착이 왔습니다 난독증이있는데 아무리 매뉴얼을 뒤져보고 검색을 해봐도 도통 어렵기만 하네요..

본론으로 들어가서 제가 하고자하는건 아래와 같습니다


write.php 가 글쓰기 폼인데 그저 bbs 테이블에 content 칼럼에만 내용을 넣고 싶습니다. 디비구성은

bbs 테이블 안에 칼럼 두개밖에 없습니다 no와 content...


no의 경우는 자동 인덱스? 인가 붙고 content는 내용이 들어가는 부분입니다




아래의 소스는 컨트롤러에 board.php 소스입니다


<?php
/*
 * 방문게시판 리스트 파일 추후 한 파일로 통합 준비.
 */

class Board extends CI_Controller {
 
 function __construct() {
  parent::__construct();
  //디비를 제어하는 bbs 모델을 불러온다
  $this->load->helper(array('url','form','date'));
  $this->load->library(array('tank_auth','form_validation'));
  $this->load->model('bbs');
 }
 
 //리스트 화면입니다.
 function lists() {
  //bbs 모델 클ㄹ스 안에 get_lists 함수를 호출해준후 data[list]에 넣어줌
  $data['lists'] = $this->bbs->get_list();
  
  //lists.php 뷰파일을 로드하면서 data값도 변수로 전달 해준다.
  $this->load->view('main/header.php');
  $this->load->view('bbs/lists',$data);
  $this->load->view('main/footer.php');
 }
 
 function ajax_lists() {
  //bbs 모델 클ㄹ스 안에 get_lists 함수를 호출해준후 data[list]에 넣어줌
  $data['lists'] = $this->bbs->get_list();
  
  //lists.php 뷰파일을 로드하면서 data값도 변수로 전달 해준다.
  $this->load->view('bbs/lists',$data);
 }
 
 //글쓰기는 정 말 몰르겠다 어찌해야되지 ㅡㅡ;;
 function write() {
  $this->db->insert('comment',$_POST);
  redirect('board/lists');
 }

 //본문내용 보기 화면입니다.
 function view($no) {
  //변수로 전달될 data안에 bbs모델이용 $no 셀렉트 쿼리 날림요~
  $data['item'] = $this->bbs->get_item($no);
  
  //data에 저장된 쿼리값에 걸린 내용들?을 변수값으로 전달요~
  $this->load->view('main/header.php');
  $this->load->view('bbs/view',$data);
  $this->load->view('main/footer.php');
 }
}
?>

아래의 소스는 model에 bbs.php 소스 입니다.

 <?php

/*
 * 방문보드 디비처리 모델
 */
class Bbs extends CI_Controller {
 
 function __contruct() {
  //생성자에서 database를 초기화후에 로드 시킨다.초기화가 어떻게 되는건지는 아직 잘 몰름.
  parent::__construct();
  $this->load->dababase();
 }
 
 //리스트 불러오는 디비쿼리문들?
 function get_list() {
  //$query에 bbs에 관련된 부분을 스리슬쩍 글어와서 변수값으로 지정
  $query = $this->db->from('bbs');
  
  //변수값을 가져온걸 리턴해준다(리턴을 해줌과 동시에 값도 동시에 넣어줌.
  return $query->get()->result_array();
 }
 
 //뷰 화면 부러오는 디비 쿼리문들?
 function get_item($no) {
  //쿼리작성을 한다 bbs안에 내용을 긁어온다 단 no값이 일치하는것들로
  $query = $this->db->from('bbs')->where(array('no'=>$no));
  
  //쿼리를 실행한다 실행 결과값을 array로 작성하여 리턴시킨다.
  return $query->get()->row_array();
 }
}
?>


소스를 나름 혼자 해독하자면 글 내용을 불러오는거와 리스트를 뿌려주는건 손쉽게 가능하다고 판단이 되는데..

그넘의 form안에 값을 컨트롤러에 넘겨주고 컨트롤러에서 model을 이용 디비에 입력하는 방도는 잘 몰르겠습니다..

이런 초보양을 구원좀 해주세요 ...긴글 읽으시느라 고생하셧습니다..

감사합니다
 다음글 index.php 죽이기 하다보니..문제가! (2)
 이전글 초보의 질문! 도메인 연결 후 링크.. (6)

댓글

방문넷 / 2012/12/17 02:01:12 / 추천 0
 킁;;; 좀더 검색후에 자체 해결 봤습니다..
http://formigniter.org/app

에서 도움을 좀 많이 받았네요;;;

아직은 그래두 이해 안가는 부분이 있는데 오늘 이걸로 시간을 지새워야겠네요~
샤엠 / 2012/12/17 02:12:15 / 추천 0
좀 더 자세히 이해하고 싶으시다면 책이나 구글에서 php tutorial (.com 에서) 검색하시면 많은 자료들이 있습니다.

급하게 ;; 꼭 하셔야 한다면 유투브에서 

http://www.youtube.com/results?search_query=php+form+tutorial

영상을 참조하시면 될것 같습니다. 
방문넷 / 2012/12/17 04:36:49 / 추천 0
샤엠 //  아 답변 감사합니다.. 제가 너무 섣부르게 하고싶어서 끙끙 앓고 급한것도 아닌데 급하게 해결후에 다시 한번 샤엠님꼐서 알려주신 동영상도 보고 검색 차분히 해서 이해했습니다. 도움 주셔서 감사합니다 ^^
변종원(웅파) / 2012/12/17 09:10:18 / 추천 0
방문넷/ 컨트롤러와 뷰가 데이터를 주고받는 몇가지 패턴이 있습니다.

질문하신 것처럼 컨트롤러에서 뷰로, 뷰에서 폼전송으로 통하여 컨트롤러에서 다시 뷰로 전달하는 형태, 단순히 컨트롤러에서 뷰로만 전달하는 형태, ajax처럼 뷰에서 컨트롤러로 전송하고 다시 받는 형태 등 이런 형태에 대한 소스를 보면서 익혀두시기 바랍니다.

포럼소스나 마냐님 소스나 메모 소스(ajax는 없습니다)나 참고하시기 바랍니다.

그럼 건투를... ^^ 
이현석 / 2012/12/17 16:56:26 / 추천 0
입력클래스 메뉴얼을 보시면 도움이 될 것 같아요~
http://codeigniter-kr.org/user_guide_2.1.0/libraries/input.html
이지포토 / 2012/12/17 18:41:02 / 추천 0

학습의 가장 빠른길은 이미 만들어진 쉽게 표준화된 샘풀게시판을 보시면 이해하시기 가장 빠를겁니다.
이또한 시행착오를 가장 줄이는 지름길입니다.

그리고 잘만 규격화 하면 페이지수를 훨씬 줄일수 있습니다. 코딩수도 마찬가지..
 

방문넷 / 2012/12/20 23:12:44 / 추천 0
 웅파 // 넵 감사합니다. ajax_list의 경우는 제가 따로 ajax까지 겸행해서 공부하는겁니다.. 실질적으로 저 소스에선 안쓰여서요 ^^:;;;

이현석 // 네 html이나 그런거에 아직은 전문적인 지식이 없다보니까 벽을 넘어 넘사벽이 되는거같네요.. 유용하게 메뉴얼보고 하나하나 공부중이랍니다 ^^:;

이지포토 // 넵 감사합니다. 만들어진 샘플게시판을 보고 고대로 복사가 아닌 실직적으로 손에 익을려고 배껴서 한번 적용하고나니 조금 나태해지는 기분??? 이들어서요 ^^;; 하나하나 시행착오도 겪어보고 여러가지를 격어보고싶어서 저렇게 삽질중입니다 ^^:
꾸숑 / 2013/01/27 17:42:34 / 추천 0
방문넷//
현재 저도 게시판 만들고 있는데
글쓰기, 리스트 까지 해봤는데... 글읽기에서 고전중입니다.

리스트 페이자  출력하는데 이전에는 list.php 하나면 끝이었는데..
controllers/board.php
models/board_model.php
views/list_view.php
이렇게 3개의 php를 작성해야 하는데..
적응기간이 필요해 보이네요^^

앞으로 글수정 글삭제 만들어야 하는데... 초보입장에서 좀 어렵네요... 매뉴얼 보다 눈빠짐...

쉽게 보고 배울수 있는 심플한 게시판 있으시면 선배님들 부탁 드릴게요...

webse@nate.com