본문 바로가기

MySQL28

테이블 구조 변경하기 일단 글을 쓰고, 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.
글 쓰기 작성 글을 작성하면 DB에 내용을 저장하는 코드를 짠다.post.php에서 글을 작성한 뒤, save.php에서 실제 DB에 넣게 된다.사실 별거 없다.웹 프로그래밍이라고 되게 어렵게만 생각했는데, 차근차근 나눠서 생각해 보니 그리 어려울 것 같지도 않다.- HTML : 화면에 보이는 것을 설계한다.- 자바스크립트 : 간단한 HTML 관련 제어 (클라이언트에서 실행)- PHP : 실질적인 로직. DB를 제어하는 것 외엔 특별한게 없다. (서버에서 실행) 글쓰기 글쓴이 패스워드 제 목  post.php는 단순히 HTML과 자바스크립트로만 구성이 되어있다.다음에 나올 .. 2008. 11. 11.
mySQL에서 자주 쓰이는 함수 정리 PHP로 mySQL을 사용할 때 자주 쓰이는 함수들이다. 1.DB 연결할 때 $con = @mysql_connect("localhost", "root" "1111") or die("can not connect"); > @는 오류가 생기더라도 화면에 에러 메시지를 보이지 않는다. 2. DB 선택 mysql_select_db ("localhost", $con); 3. DB에 쿼리 전송 $sql = "SELECT * FROM member"; $result = mysql_query($sql, $con); 4. 테이블 내의 데이터 수를 구할 때 $total = mysql_num_rows($result); > SELECT 문으로 쿼리한 결과에 대해서만 사용가능하다. 5. 데이터의 내용을 보여줄 때 $rows = m.. 2008. 11. 11.
데이터베이스 생성하기 울랄라...아주 아주 기초적인 게시판을 만들기 위해 데이터베이스를 생성한다.여러 가지 번거로운 점을 피하기 위해 하나의 파일을 실행하면 데이터베이스가 실행되도록 한다.나중에 어떤 프로그램을 짜든 반복해서 수정, 사용할 수 있으므로 save~ main_no : 게시판 글 번호title : 글 제목name : 작성자content : 내용passwd : 비밀번호primary key는 main_no로 잡았다. 이 시점에서 테이블 만들 때 들어간 변수형들이 궁금해진다.varchar는 char과는 달리 입력되는 문자크기에 따라 용량이 바뀐다. (3바이트가 될 수도 10바이트가 될 수도 있다.)하지만, char는 두 글자가 들어가든 열 글자가 들어가든 차지하는 용량은 변하지 않으므로 DB의 용량효율면에서는 가변적인 .. 2008. 11. 10.
Windows에서 APM 설치하기 사실 윈도에서는 굉장히 편하죠. 그냥 apm 파일 하나만 받아서 설치하면 끝이니까요. 참고삼아 적어봅니다. http://www.apmsetup.com/ 에서 APM setup 파일을 다운받아 설치하면 됩니다. 2008. 11. 3.
phpmyadmin 설치하기 mySQL을 편리하게 관리할 수 있는 툴이 phpmyadmin 입니다. 물론 터미날 상에서 여러 복잡한 명령을 넣어서 할 수도 있겠지만 (phpmyadmin이 없을 때를 대비해서), 일단 효율과 편리를 위해 설치! sudo apt-get install phpmyadmin 설치 끝입니다. 그런데, http://127.0.0.1/phpmyadmin 에 접속해 보면 아무 것도 나오지 않습니다! (이것 때문에 무진장 헤맸다는...-_-) 아직 활성화가 안된 상태입니다. sudo gedit /etc/apache2/apache2.conf 아파치 설정파일을 엽니다. 위와 같이 명령을 입력한 것은 파일을 열어도 권한 문제 때문에 저장이 안될 수 있기 때문에 미리 루트 권한으로 열었습니다. 맨 마지막에 아래와 같은 문구.. 2008. 11. 3.