본문 바로가기
IT/PHP

메모장 _ 수정하기

by Jeami 2013. 7. 27.
반응형


php 메모장



지난 시간에 이은 메모장을 계속 만들어보도록 하겠습니다.

메모장에 글을 입력한 후 목록이 보여지는데까지 우선 만들어보았는데요, 게시판 디자인은 원하시는 폼으로

변경해보시기 바랍니다^^

지난번에 했던 내용은 아래의 링크로 이동하시면 확인하실 수 있습니다.

http://jeami.tistory.com/entry/%EB%A9%94%EB%AA%A8%EC%9E%A5-%EB%AA%A9%EB%A1%9D%EC%A0%80%EC%9E%A5-%EB%90%9C-%EB%8D%B0%EC%9D%B4%ED%84%B0-%EB%B6%88%EB%9F%AC%EC%98%A4%EA%B8%B0

(링크가 왜 이렇게 지저분해 보일까요..ㅋㅋ)




추천은 블로거에게 큰 힘이 됩니다. 로그인 필요없는 추천한방 부탁 드릴게요.

양질의 정보로 보답하겠습니다.^^




아래는 memoList.php 중 일부입니다. 보면 아시겠지만, 수정/삭제 부분이 있죠?

자바 스크립트 <onClick> 이용해서 클릭과 동시에 해당 php 페이지로 자동으로 넘어갑니다.

사용예)    onClick="location.href='memoModify.php?m_idx=<?= $data[m_idx] ?>'">

아주 빈번하게 사용되는 문법이니까 onClick 사용법은 반드시 숙지해두시면 좋을거 같네요.

(죄송합니다. 파일을 새로이 만들었는데, 수정/삭제 파일명을 아래와 같이 수정해주세요.

이전에 작성된 memoList 에는 다른 파일명으로 onClick 에 지정되어 있을겁니다.)


$data 변수에 모든 데이터를 뽑아왔기 때문에 글이 존재한다면 m_idx 필드값도 반드시 존재합니다. 

그 값을 m_idx 라는 변수명에 담아둔 것입니다. 필드명과 변수명만 같을 뿐 내용은 다르다는 것을 한번 짚어주세요.

    <tr>

// $data 변수에 데이터를 전부 담게 되는데요. 데이터를 불러올 때는 생성된 데이터의 이름을 써주시면

//  됩니다.  ==> $data[테이블에 저장된 각 데이터의 이름]     이렇게~

        <td ><?=$data[m_memo]?></td>

        <td ><?=$data[m_name]?></td>

        <td ><?=$data[m_email]?></td>

        <td ><?=substr($data[m_regdate],5,11)?></td>

        <td >

// 이 부분은 데이터의 수정 및 삭제로 넘어가는 부분이구요~

        <input type="button" value="수정" onClick="location.href='memoModify.php?m_idx=<?=$data[m_idx]?>'">

        <input type="button" value="삭제" onClick="location.href='memoDelete.php?m_idx=<?=$data[m_idx]?>'">

        </td>

    </tr>



이제 수정 부분파일

memoModify.php 

<?php

// 이 페이지는 수정버튼을 누른 후, 기존의 데이터 내용을 수정하는 곳입니다.

// 여기서 수정을 해준 후, 수정 후의 페이지로 넘어가는 것이 큰 흐름입니다.

//해당 글의 고유속성인 idx 값이 제대로 넘어왔는지 확인합니다.

if( !$_GET[m_idx]){

?>

<script type="text/javascript">

alert("넘어온 값이 없습니다.");

history.back();

</script>

<?php

exit; 

}else{

//값이 제대로 넘어왔다면 변수 $idx 에 대입

$idx = $_GET[m_idx];

}


//DB연결

$con = mysql_connect("localhost", "root", "apmsetup") or die(mysql_error());

//데이터 선택

mysql_select_db("sample_db") or die(mysql_error());

//sql 작성

$sql = "select * from sample_memo where m_idx='".$idx."'";

//sql 적용

$result = mysql_query($sql, $con);

//우선 한 행만 가져와서 변수에 저장

$data = mysql_fetch_array($result);

//데이터가 존재하는지 확인합니다.

if( !$data[$idx]){

?>

<script>

alert("데이터가 존재하지 않습니다.");

history.back();

</script>

<?php 

exit;

}

?>


///여기까지가 데이터의 이동을 표현해준 것이고, 이제 수정폼을 간단하게 만들어보도록 할게요.///


<form name="modifyForm" method="post" action="memoModifyUpdate.php">

<input type="hidden" name="idx" value="<?= $data[m_idx] ?>">

<table>

<tr>

<td>MEMO 수정하기</td>

</tr>

</table>


<table>

<tr>

<td>이름</td>

<td><input type="text" name="Name" value="<?= $data[m_name] ?>"></td>

</tr>

<tr>

<td>이메일</td>

<td><input type="text" name="Name" value="<?= $data[m_email] ?>"></td>

</tr>

<tr>

<td>비밀번호</td>

<td><input type="text" name="Name" value="<?= $data[m_pass] ?>"></td>

</tr>

<tr>

<td>내용</td>

<td><input type="text" name="Name" value="<?= $data[m_context] ?>"></td>

</tr>

<tr>

<td><input type="submit" value="SAVE"></td>

</tr>

</table>

</form>


<?php

//DB는 항상 닫아주는 습관^^ ==> mysql_close(DB연결 변수명)

mysql_close($con);

?>



여기까지 진행된 내용을 다시한번 정리하면,

"수정버튼" 클릭 ==> 

수정할 수 있는 페이지로 이동(기존의 데이터를 그대로 가져옵니다.) 후 수정내용을 기재하고 ==>

수정이 완료된 페이지로 다시 이동.

이렇게 3 가지 큰 흐름을 갖습니다.

다음 시간에는 "수정이 완료된 페이지"를 만들어보도록 할게요.

 


 






반응형

'IT > PHP' 카테고리의 다른 글

php 한글깨짐 방지  (0) 2013.08.02
메모장 만들기 _ 수정한 내용 저장하기  (0) 2013.07.27
메모장 목록(저장 된 데이터 불러오기)  (0) 2013.07.24
DB 연결 메모장 글쓰기  (0) 2013.07.24
DB 연결(기초문법)  (1) 2013.07.22

loading