글쓰기시 고유 숫자를 넣고 싶습니다.

글쓰기시 고유 숫자를 넣고 싶습니다.

QA

글쓰기시 고유 숫자를 넣고 싶습니다.

본문

기존에 등록된 마지막 글의 wr_id가 15일 경우,

 

다음 글쓰기 할때 wr_1 여분필드 안에 마지막 wr_id 값보다 1이 큰 값을 넣어주고 싶습니다.

지금 작성하는 글의 wr_1 = wr_id 가 되겠지요.

 

글쓰기에서는 php echo $write[$i]['wr_id'] 로는 당연히 안되는것 같은데.. 방법이 있을까요? 

이 질문에 댓글 쓰기 :

답변 3

스킨 폴더에 write_update.skin.php 만들고 아래 처럼 넣으면 됩니다.

<?php
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
$sql = "update ".$write_table." set wr_1 = '".$wr_id."' where wr_id= '".$wr_id."' ";
sql_query($sql);

저렇게하면 자동으로 현재 글쓰는 wr_id가 wr_1에 저장됩니다.
뷰 <?php echo $view['wr_1']; ?>
리스트 <?php echo $list[$i]['wr_1']; ?>
확인 해보면 됩니다.

글쓰기에서 꼭 번호를 보고 싶다면 write.skin.php 적당한곳에 아래처럼 넣으면 됩니다.
$temp = sql_fetch("select max(wr_id) as last_id from $write_table where wr_is_comment = 0");
echo $temp['last_id'] + 1;

위처럼 넣긴했는데, 글쓰기 페이지에서 마지막 wr_id 보다 1 큰 값을 어떻게 호출해서 확인할 수 있을까요?

<== 이렇게 해서는 정확한 값이 구해지지않습니다

마지막 값이라고 가져 왔지만 내가 등록하는 동안 다른 사람이 먼저 글을 등록 해버리면 마지막 값이 

달라지니까요

 

어찌 되었든 구하는 코드는

$row=sql_fetch("select wr_id from $write_table where wr_is_comment=0 order by wr_num limit 0,1");

$last_wrid = $row['wr_id']+1;

 

 

 

 

 

새로운 글을 작성할 때 wr_1 필드에 wr_id 값을 자동으로 저장하려면,

write_update.php에 sql_fetch()를 사용하여 가장 큰 wr_id 값을 가져온 후,

이를 wr_1 필드에 저장하는 방식이 가장 안정적.

게시판엔 여러 사용자가 동시에 글을 작성하니  AUTO_INCREMENT를 활용하고,

LOCK TABLES로 데이터의 정확성을 유지하는 것이 중요.

답변을 작성하시기 전에 로그인 해주세요.
전체 129,406 | RSS
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1402호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT