내용 textarea에 내용 쌓아가기

내용 textarea에 내용 쌓아가기

QA

내용 textarea에 내용 쌓아가기

본문

원 A 게시물의 wr_content 에 내용이 들어있고

 

다른 게시물에 wr_content을 입력하면 A 게시물의 wr_content 에

내용이 바뀌는게 아니고 추가되었으면 하는데

 

A 게시물의 wr_content 에

"동해물과 백두산이"

가 있다고 가정하고

 

B 게시물에서 "마르고 닳도록" 입력 시

 

A 게시물 wr_content 는 

동해물과 백두산이

마르고 닳도록

 

이렇게 계속 쌓여가도록 하고 싶은데

b게시물에서 a게시물로 데이터를 가져가는건 하겠는데

 

A를 바꾸는게 아니라 쌓아가는 법을 모르겠네요 ㅜㅜ 

 

 

이 질문에 댓글 쓰기 :

답변 7

write_update.php에서

wr_content를 사용해서 업데이트를 하신다면.


$wr_content = $write['wr_content'].$wr_content;

이런식으로 기존에 $write['wr_content']에다가 이번에 새로 입력된 $wr_content를 붙이시면 됩니다.

테이블 필드가 a 라면 a = a + 입력받은값 하시면 됩니다.

아니면 https://blog.edit.kr/entry/mysql-%EB%AC%B8%EC%9E%90%EC%97%B4-%ED%95%A9%EC%B9%98%EA%B8%B0 참고하셔서 문자열로 합치셔도 되고요.

b게시물에서 a게시물로 데이터를 가져가는건 하겠는데<== 이것을 어떻게 했는지 코드를 보여주면 원하는 코드를 만들기 쉬울텐데요

1. a게시물의 wr_id를 알때 //등록되어 있는 다른 게시물에 합치기

스킨폴더에 write_update.skin.php생성 후

$a_wr_id=1; //a게시물 wr_id

if(!$w)

sql_query("update $write_table set wr_content=concat_ws('\n', wr_content, '$wr_content') where wr_id=$a_wr_id");

 

 

 

 

아니아니 다들 혼돈 하시는것 같은데요? 정리를 해드리겠습니다.

정리하기전에 먼저 이런기능이 꼭필요할까하는 생각이 흠.....

아무튼 해야한다면?

 

이것은 리스트 페이지에선는 글을 읽지도않아기때문에 이런 기능은 의미가 없는거고 ,

또한 쓰기페이지 에서는 생각하고 말것도 없는거고,

그렇다면?

기존에 남의 계시물 내용을 읽고 댓글 답변글이아닌 내용을 추가 하는방식을 구현 해야하는것 같은데요............---;;; 

즉 현댓글처럼 추가 구현을 하되 대글디비가 별도로 저장하지않고 현글자체에 업데이트 구현을 해야한다는거죠 ...

내가 쓴글은 수정하면 되는거구 

남이 쓴글 즉 권한이 없는 글 을 읽고 거기에 추가내용을 덮어 쓴운다는것인데....

기존소스에 손을 대는게 아니구요;;; 

만약에 기존스를 손대는 거라고하면은 수정 권한을 풀면하고말것도 없는거구요..

그런데 여기서 남의 글에 글을 추가 작성한다는것은 보안상 문제 되는 부분이 아닌가요?

그래서 댓글처럼 채팅처럼 사용하는거구요.

 

아무튼..남의 글에 추가 내용을 덧붙인다는 결론이라고 생각이 드는데요? 언론의 비유하자면 편집장이 스킨이 된다는거죠?

 

그렇다면 원글을 읽는 뷰페이지에서 추가 엑션 폼을 작성하여 처리해야 될것같네요..

그리고...엑션에대한 디비 서버쪽 구현 코드를 만들면 되구요..

 

이렇게 해야 맞는것 아닌가요?

 

그런데 여기서 편집장 스킨이 필요가 없는것은 편집장 수정권한을 주면 얼마든지 남의 글을 추가적인 편집을할수 있으니 또한 의미가 없지않을까요?

하긴 원글은 손되지않아야 하니. 의미는 있겟네요 ㅎㅎ;;

다음과 같이 하면 가능하지 않을까 생각합니다.

참고하셔서 원하시는 형태로 구현하시면 되지 않을까 합니다.

 

데이터베이스 스키마 변경


CREATE TABLE post_versions (
  id INT AUTO_INCREMENT PRIMARY KEY,
  post_id INT,
  content TEXT,
  created_at DATETIME
);

 

게시물 생성 및 업데이트 로직 변경


// 게시물 업데이트 로직
function updatePost($post_id, $new_content) {
    $previous_content = getCurrentContent($post_id);
    $merged_content = $previous_content . "\n" . $new_content;
    saveToPostVersions($post_id, $merged_content);
}

 

뷰 수정


// 게시물 표시 로직
function displayPost($post_id) {
    $versions = getPostVersions($post_id);
    $combined_content = '';
    foreach ($versions as $version) {
        $combined_content .= $version['content'] . "\n";
    }
    echo $combined_content;
}

 

또한  이전 내용과 새로운 내용을 합칠 때, 데이터 무결성을 유지하기 위한 검증과 오류 처리 로직을 추가해야 할 것 같습니다. 예를 들어, 중복된 내용을 방지하거나 오류를 처리하는 방법을 구현해 볼 수 있을 것 같습니다.

 

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

회원로그인

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