본문 바로가기

분류 전체보기138

게시판 만들기 중간정리 (소스 첨부) 한 차례 개념설계도 변경이 있었고 그에 따라 DB 설계도 조금 바뀌었다. 또, 일부 소스에서는 HTML코드가 누락된 경우도 있었다. 그래서 이 쯤해서 소스들을 한번 정리할 필요성이 생겼다. 첨부파일을 받아 압축을 풀고 http://localhost/create_db.php 를 수행하면 중간에 변경된 테이블까지 모두 적용되게 수정했다. 그 전에 create_db.php 에 있는 mySQL 접속 아이디나 비밀번호는 본인에 맞게 수정을 해야한다. ****** 이건 강좌가 아니다. -_-; ********* 그냥 나만의 게시판을 가지고 싶어서 여기저기서 소스를 참고해 만들고 있는 것 뿐이고, 그래서 언제 어디서라도 기억을 되짚어 볼 필요가 있을 때 참고하고자 정리하고 있는 것 뿐이다. 그래서, 다른 고수분들이 .. 2008. 11. 14.
글 삭제하기 작성 글 삭제하는 기능은 수정 기능보다 좀 더 간결하다.우선 앞서 작성한 edit.php와 edit_ok.php 파일을 각각 delete.php와 delete_ok.php 로 복사한 후 아래와 같이수정하면 된다. 글 삭제하기"> 비밀번호를 입력하세요: '));" value="취 소">   delete.php에서는 자바스크립트의 내용을 변경하고, 비밀번호를 입력받는 폼으로 수정한다.delete_ok.php에서는 입력받은 패스워드와 일치 여부를 확인 후 DB에서 해당 글을 삭제하면 된다. 2008. 11. 14.
글 수정하기 작성 글 수정하는 것은 post.php -> edit.php 로 복사해서 사용한다.어차피 글 작성 폼과 수정 폼은 동일하고 단지 수정하기에서는 DB에서 내용을 불러와 뿌려주기만 하면 된다.그리고 edit_ok.php에서 DB에 업데이트를 하면 된다.업데이트를 하기 전에 패스워드가 일치하는지를 체크하는 루틴을 둔다. 글 수정하기"> 글쓴이 "> 패스워드 이메일 "> 제 목 ">  134라인부터가 edit_ok.php 소스입니다.소스에 라인넘버를 붙여주는 프로그램이 textarea 영역이 있으면 오류가 있더라구요. 2008. 11. 13.
글 작성하기 수정 글 수정과 삭제 기능을 넣기에 앞서 설계가 변경되었으므로 통일성을 주기 위해 파일명과 HTML 폼에도변화를 주었다.기존에 글 작성 후 실제 DB에 넣는 기능을 수행했던 save.php -> post_ok.php로 파일명을 변경했다.그리고 post.php도 소스 코드를 일부 고쳤다. 글쓰기 글쓴이 패스워드 이메일 제 목   post_ok.php에서는 HTML 코드를 모두 삭제하고 PHP로 변경했다.이제 edit.php 를 작성할 차례... 2008. 11. 13.
게시판 설계 변경 고민하다가 게시판 설계를 바꾸기로 했다. 2008/11/05 - [게시판 만들기] - 개념 설계 처음엔 윗글에 나온대로 post.php에서 쓰기,수정,삭제 등 모든 것을 해결하려고 했다. 뭐 안되는 것은 아니지만, 귀챦다...(블로그 이름을 귀챠니스트의 PHP로 바꿔야 할까보다.) 그래서, 각각의 기능에 맞게 소스를 분리해서 하기로 했다. 장단점이 있을테지만 걱정되는 것은 HTML 폼이 바뀌면 다른 것들도 일관성있게 바꾸어줘야 한다는 것. read.php에서 소스를 복사해 edit.php를 만들었기 때문이다. 이건 하다보면 또 뭔가 꽁수가 나올 것 같긴 하다. 어쨌거나, 지금은 그냥 기능별로 소스를 분리해서 하기로 했다. 이래서 무엇이든 초기 설계안(draft)이 중요하다. 지금이야 게시판 정도에 그치니.. 2008. 11. 13.
테이블 구조 변경하기 일단 글을 쓰고, DB에 넣고, 다시 DB에서 불러오고...등등 기초적인 것은 해봤지만만들어놓고 보니 참 허접하다...글쓴 날짜도 없고, 몇 명이나 읽었는지도 알 수 없다.그리고 작성자의 이메일 주소도 쓸 수 있게 하고 싶다. (나중에 이메일로도 내용을 보낼 수 있게...)그럴려면 테이블을 삭제하고 새로 만들거나, 기존의 테이블을 변경해야 한다.여기선 SQL의 ALTER 명령을 이용해서 바꿔본다.물론 phpmyadmin 에 접속해서 수정하는 방법도 있다.하지만 이왕 프로그래밍 공부하는 것이니 티를 내보자.  날짜(date)와 조회수(count) 그리고 이메일(email) 컬럼을 기존 board 테이블에 추가했다.그럼 정말로 바뀌었는지도 확인!$ mysql -uroot -pmysql> use bbs;mys.. 2008. 11. 12.
mySQL 패스워드 변경하기 우분투에서 mySQL을 설치하면 중간에 터미널 창에서 패스워드를 입력하라는 창이 뜬다. 물론 여기서 입력을 할 수도 있지만, 그냥 건너뛰었을 경우 나중에 패스워드를 입력할 필요가 생긴다. 간단하다. $ mysqladmin -u root -p password 1111 앞에 영어로 된 문장까지는 그대로 터미널 창에 써준 뒤 맨 마지막(1111이라고 쓴)에 변경할 패스워드를 써준다. 터미널 창에서 Enter password: 라는 커맨드가 뜨는데, 변경 전의 패스워드가 없었으므로 그냥 엔터를 쳐주면 패스워드가 변경이 된다. 이것이 제대로 안되면, mysql 커맨드에 직접 들어가서 변경할 수도 있다. $ mysql -u root -p Enter password: [엔터] mysql> update user set.. 2008. 11. 12.
글 내용보기 작성 글도 쓸 수 있게 되었고, 쓴 글에 대한 목록도 볼 수 있게 되었다.이제는 실제 글 내용을 봐야겠다.별거 없다!걍 DB에 있는 내용을 불러와 화면에 뿌려주는 것 밖에는...-_-;(나머지 기능은 언제 만드나...쩝)소스를 한번 들여다 보면,공지 게시판 제목 글쓴이 글 번호  역시나 핵심 내용은 list.php에서 넘겨받은 글 번호(main_no)를 읽어들여서, SQL문에 대입 후테이블에서 내용을 가져오는 것이다.우분투에서 소스코드를 입력하다 보니 쓸데없는 빈줄이 많이 들어간다. 쩝지금까지 쌩초보의 아주 아주 기초적인 게시판 만들기였다.뼈대를 만들었으니 이제는 살을 붙일 차례다.수정도 해야하고, 삭제도 해야하고, 답변을 쓸 수 있는 기능도 넣어야 .. 2008. 11. 12.
글 목록보기 작성 이전에 작성된 글을 저장하는 기능까지 만들었다.이번엔 저장된 글 목록을 보는 기능인 list.php 를 만든다. [공지 게시판] 번호 제목 작성자 등록된 게시물이 없습니다. \n"; //get data array from query result and show on the board while($row = mysql_fetch_array($result)) { $main_no = $row[main_no]; echo "$row[main_no]\n"; //read post echo "$row[title]\n"; .. 2008. 11. 12.