4. PHP 게시판 만들기, write 제작 1

2015. 3. 31. 23:43
저자 : Kurien

주의: 본 게시판은 보안을 생각하지 않고 만들어졌으므로 실제로 사용되어서는 안되는 코드입니다.

공부할 때 게시판이 이처럼 동작한다는 정도로만 이해해주세요.


오늘도 게시판 제작을 해보겠습니다.

오늘은 글을 쓰는 부분인 write를 제작해보겠습니다.


글을 "쓰기만" 하는 write 부분은 프로그램이 거의 없으니 단순 구조만 제작했습니다.

물론 같은 폼을 이용해서 글을 수정하게 된다면 조금 더 복잡해지지만, 그 부분은 게시글 등록, 삭제가 끝난 다음 하도록 하겠습니다.


그럼 오늘도 먼저 이 파일을 받아주세요!


20150331_project.zip


전 포스팅에서 만들었던 index.php와는 조금 다른 점이 눈에 보이실텐데요.

글 쓰기 버튼을 제외하면 단순히 CSS 부분을 위한 것이므로 크게 신경은 쓰지 않으셔도 됩니다.


그럼 바로 write.php 폼을 보죠.


<?php

require_once("../dbconfig.php");

?>

<!DOCTYPE html>

<html>

<head>

<meta charset="utf-8" />

<title>자유게시판 글쓰기 | Kurien's Library</title>

<link rel="stylesheet" href="./css/normalize.css" />

<link rel="stylesheet" href="./css/board.css" />

</head>

<body>

<article class="boardArticle">

<h3>자유게시판 글쓰기</h3>

<div id="boardWrite">

<form action="./write_update.php" method="post">

<table id="boardWrite">

<caption class="readHide">자유게시판 글쓰기</caption>

<tbody>

<tr>

<th scope="row"><label for="bID">아이디</label></th>

<td class="id"><input type="text" name="bID" id="bID"></td>

</tr>

<tr>

<th scope="row"><label for="bPassword">비밀번호</label></th>

<td class="password"><input type="text" name="bPassword" id="bPassword"></td>

</tr>

<tr>

<th scope="row"><label for="bTitle">제목</label></th>

<td class="title"><input type="text" name="bTitle" id="bTitle"></td>

</tr>

<tr>

<th scope="row"><label for="bContent">내용</label></th>

<td class="content"><textarea name="bContent" id="bContent"></textarea></td>

</tr>

</tbody>

</table>

<div class="btnSet">

<button type="submit" class="btnSubmit btn">작성</button>

<a href="./board/index.php" class="btnList btn">목록</a>

</div>

</form>

</div>

</article>

</body>

</html>


말씀 드린대로 form을 이용한 단순 html 폼입니다.

.boardArticle 까지는 index.php 파일과 거의 같고 그 아래의 #boardWrite부터가 작성된 부분입니다.



<form> 태그를 통해 데이터를 처리하는 파일로 내용을 전송하는 부분입니다.


각각의 <tr> 태그에는 <th>와 <td> 태그가 하나씩 들어있는데요.

<th>는 위의 이미지에서 아이디, 비밀번호, 제목, 내용을 뜻하고,

<label> 태그의 for 속성으로 input 태그의 id 값을 지정하면 label을 눌렀을 때 해당 input 태그에 포커스를 줍니다.


<input> 태그나 <textarea>와 같은 입력 양식 태그는 대부분 아실테니 넘어가고,,,

마지막으로 btnSet이라는 div를 만들고 그 안에 작성과 목록 버튼을 만들었습니다.


아직은 CSS를 적용하지 않아서 기본적인 상태로만 나오구요.

다음 포스팅에서는 글을 올리는 부분인 write_update.php를 만들어보겠습니다.


어려운 부분(은 없겠지만...)이 있다면 댓글 남겨주시구요,

현재 진행 상태는 http://kurien.dothome.co.kr에서 보실 수 있습니다!

  1. jaenna 2015.04.02 10:49  댓글주소  수정/삭제  댓글쓰기

    잘 이해되요!!좋은 컨텐츠 감사합니다 ㅎ.ㅎ
    다음강의는 언제올라오나요 ??

  2. jaenna 2015.04.02 14:03  댓글주소  수정/삭제  댓글쓰기

    저 질문이 있는데요, 게시판 목록에서 삭제나 수정을 하고싶을땐 다른방법으로 목록을 불러내야하는데
    어떻게 해야할까요 ㅠㅠ 여기서 계속 막혀서요..

    • Kurien 2015.04.02 14:05 신고  댓글주소  수정/삭제

      게시판 리스트에서 삭제를 말하시는거라면, checkbox태그의 value를 글의 id값으로 해서 선택 삭제, 제거 하는 방법이 있습니다.

  3. jaenna 2015.04.02 17:00  댓글주소  수정/삭제  댓글쓰기

    귀찮게 해드려서 죄송해요 ㅠ
    <input type="checkbox" value=<?php $row['id'] ?> > 이런식으로 넣어도 되나요?

  4. 튼튼 2015.10.18 12:20  댓글주소  수정/삭제  댓글쓰기

    감사합니다!

  5. 이승희 2016.07.16 04:45  댓글주소  수정/삭제  댓글쓰기

    안녕하세요 반가워요

  6. 성은범 2016.10.06 12:25  댓글주소  수정/삭제  댓글쓰기

    너무 잘올려주셔서 소름 제대로 돋았습니다. 덕분에 php 이해가 너무 잘됩니다

  7. whee 2016.10.11 16:01  댓글주소  수정/삭제  댓글쓰기

    너무 쉽게 이해되도록 올려주셔서 감사합니다~ 정말 잘보고 있습니다~!!

  8. 호랑이 2018.04.28 16:52  댓글주소  수정/삭제  댓글쓰기

    모두 반갑습니다

    날씨가 좋아요

  9. 한지민 2019.05.13 15:00  댓글주소  수정/삭제  댓글쓰기

    날씨가 좋아요

  10. 사이스 2021.10.03 17:05  댓글주소  수정/삭제  댓글쓰기


    현재 선수단

    골키퍼: 주제 사, 존 러디

    센터백: 코너 코디, 윌리 볼리, 로망 사이스, 맥스 킬먼, 예르손 모스케라

    풀백/윙백: 넬송 세메두, 키-야나 후버, [ http://ooo.aaoouu.com ] 페르난도 마르살, 라얀 아이트-누리, 조니 카스트로 오토

    중앙 미드필더: 후벵 네베스, 주앙 무티뉴, 레안데르 덴동커, 오웬 오타소위

    공격수/윙어: 아다마 트라오레, 페드로 네투, 다니엘 포덴세, 프란시스코 트린캉, 모건 깁스-화이트

    스트라이커: 라울 히메네스, 파비우 실바, 패트릭 쿠트로네



    숫자는 많지만, 울브스의 수비는 여전히 [ http://ppp.aaoouu.com ] 취약하다. 특히 볼리와 모스케라가 이탈한 지금은 더욱 그렇다. 하지만 그들이 있더라도 라즈는 그의 압박을 강하게 들어가고 라인을 높게 올리는 축구에 맞는 빠르고 피지컬 좋은 리더형 수비수를 원할 것이다 (지난 주말 스토크와 코벤트리 전에 보여줬던 3-4-3으로 갈 수도 있다. 그러나 그 두 경기에서도 지난 시즌의 울브스와는 완전히 스타일이 달랐다).



    로망 사이스가 이번 달 내에 팀을 떠날 수도 있다. 그의 계약은 내년이면 만료되고 아직 연장에 대한 합의는 전혀 없었다. 때문에 울브스가 그들이 원하는 센터백을 영입할 수 있다면, 사이스는 이적할 수 있을 것이다.

    다시 한번 ‘사기 위해 팔아야 한다’라는 상황이 와 닿는다.



    이적시장 초기에는 후벵 네베스나 아다마 트라오레를 팔아 [ http://qqq.aaoouu.com ] 큰 돈을 마련하고 다시 팀에 투자할 것이라는 전망이 있었다. 네베스는 울브스를 떠날 가능성이 높아 보였고 아스날은 그라니트 자카의 대체자로 그에게 관심을 드러냈다. 그러나 자카의 로마 이적 욕구가 실현되지 않음에 따라, 아스날의 관심은 비드까지 이어지지 않았다. 이제 자카는 최소 2024년까지 가는 재계약을 맺을 채비를 마쳤다.



    네베스는 3년의 계약 기간을 남겨 두고 있는 반면, 아다마는 2년 밖에 남지 않았다. 아다마는 지난 시즌 말 울브스가 제시한 새로운 계약 체결에 가까워지고 있었지만, 누누 에스피리투 산투의 사임은 상황을 원점으로 돌려 놓았고 아다마는 사인을 재고 중이다. 그는 프리시즌 경기에서 대단한 퍼포먼스를 보여주고 있다. 새로운 감독에게 인상을 주기 위함이었을까? 아니면 다른 감독들에게 자신의 가치를 보여주는 것이었을까?



    현재로선 울브스는 두 선수 모두 팔지 않을 것으로 [ http://rrr.aaoouu.com ] 예상된다. 그들은 네베스와 아다마를 다른 클럽에 팔거나 오퍼하려는 움직임을 보이지 않고 있다 ? 울브스는 그들이 책정해둔 금액에 제의가 들어올 때에만 딜에 임할 것이다. 물론 구매력이 있는 클럽이 (프리미어리그 탑6나 챔피언스리그 팀들 말이다) 네베스나 트라오레에게 관심이 있다면 말이다.



    그렇다면, 과연 울브스는 영입에 필요한 돈을 어디서 충당할 것인가?



    이적 의지가 있는 선수들 중 가장 큰 이적료를 받을 수 있을 라파 미르부터 시작해보자.