회원 여분필드 mb_1에 db값을 쉼표 등을 넣어서 여러개 넣을 수 있나요?
본문
현재 게시판에 회원이 댓글을 달고나서 관리자가 댓글을 확정해주면
댓글 쓴 회원의 여분필드mb_1에 댓글을 쓴 원글의 제목을 입력되게 만들었습니다.
그런데 여기서 하나의 글만 댓글을 다는게 아니고 여러 글에 댓글을 달게 되면
mb_1에 각 원글 제목을 쉼표나 | 등을 통해 여러개 넣고 싶은데 어떻게 해야할까요?
다시말해 mb_1에 제목1, 제목2, 제목3.... 또는 제목1|제목2|제목3|.... 이렇게 넣고 싶습니다.
if($_POST['wr_6']=="확정"){
if($row['wr_subject']){
$sql="update {$g5['member_table']} set mb_1 = '".$row['wr_subject']."' where mb_id='".$row['mb_id']."'";
}
sql_query($sql);
};
답변 5
mb_1에 이미 저장된 값이 있느냐 처음 저장이냐에 따라 약간 다릅니다
if($row['wr_subject']){
$mb= get_member($row['mb_id'], "mb_1");
if($mb['mb_1']) $mb_1=$mb['mb_1']."|".$row['wr_subject'];
else $mb_1= $row['wr_subject'];
sql_query("update {$g5['member_table']} set mb_1 = '$mb_1' where mb_id='{$row['mb_id']}' ");
}
타입이 varchar 255 니까 그 안에 들어가는 양만큼이라면 문제가 없을것으로 보여집니다.
추가를 하고 싶으신거라면 update 이전에 select 하여 해당 값을 먼저 가져온 후
$sql2 = "셀렉트 구문";
$row2 = sql_fetch($sql2);
$mb_1 = $row2['mb_1']."|".$row['wr_subject'];
후 update 구문에서 mb_1 = '".$mb_1."' 으로 변경 하시면 되지 않을까 생각해봅니다.
여분필드의 길이를 기준으로 제목을 입력시 구분자는 정해야 하겠지만 | 기준을 써서 기입을 하시려는건지 아니면 개별마다 입력하도록 하시려는건지 확실하지 않아서 구분자를 넣어 처리되도록 해야하는건데
update 테이블명 set mb_1=mb_1+"|"+$wr_subject where 체크검색값
이런식으로 처리하시면 될듯 합니다.
처리 방식등 두분이 잘 답변해주신거 같고, 해당 처럼 작업을 하실려면 내용이 길어지실테니 varchar에서 text로 필드 변경도 해주셔야 할거 같습니다.
별도 테이블을 만드시는 걸 추천합니다.