그누 질문답변처럼 태그를 만들려고하는데요!
본문
안녕하세요
저도 tagit
http://aehlke.github.io/tag-it/
을사용해서,
태그를 만드는중인데요,
조금 어렵네요 .ㅠㅠ..
<input name="tag" value="하나,둘,셋" >
input value "하나,둘,셋" 으로 값을 받고
이값을
tagbox 테이블에 각각 넣어주려고하는데요,
1. 하나
2. 두울
3. 셋
update문을 아래와같이..
$tag = explode(",",$_POST["tag"]);
for($i=0; $i<count($tag); $i++){
$sql = " update from tagbox set
tag_no = '$tag_no',
tag='".$tag[$i]."'";
sql_query($sql);
}
그런데 안되네요 ...T_T 왜 그럴까요 ?...
-------------그리고 추가로 한가지 더 질문을 드리자면..
1. 하나
2. 둘
3. 셋
이와같이 db가 존재하는데..
글쓰기시, 또
하나,둘 태그가 입력됬을시,
이 두 필드는 생성을 또하면안되는거잖아요 ?중복된 값이니까,,
그럴때는 어떻게 해야하나요 ?
제가 지금 작성하는 구조는
게시판 글 테이블 따로,
태그 테이블 따로 하려고하거든요 ..
이렇게 되면 좀 번거롭나요 ?..흠
!-->답변 4
테이블 구조가 어떻게 되어 있는지 모르겠지만 제일 편하게 하시려면
table : tags
column : idx, bo_table, wr_id, tag
<input type="text" name="tags" value="" />
가, 나, 다, 라, 마
이렇게 입력하고 submit
$res = sql_fetch("SELECT COUNT(*) as cnt FROM tags WHERE bo_table = '".$bo_table."' AND wr_id = '".$wr_id."'");
// 여기서 해당 게시판, 글번호로 조회 후 등록된 게 있으면 삭제
if($res['cnt']) {
sql_query("DELETE FROM tags WHERE bo_table = '".$bo_table."' AND wr_id = '".$wr_id."'");
}
$tag = explode(", ", $_POST['tags']);
foreach($tag as $value) {
sql_query("INSERT INTO tags SET bo_table = '".$bo_table."', wr_id = '".$wr_id."', tag = '".$value."'");
}
참고만 하시라고 남깁니다.
!-->update ABCDE set column1='xyz' where no='3'
'ABCDE' 테이블의'column1' 컬럼 값을 'xyz' 으로 수정한다.
수정대상은 'no' 컬럼값이 '3' 인 레코드 전부이다.
업데이트 구문 사용법 인데요...
from을 빼셔야 할듯 합니다.
그리고 혹시나 에러가날때는 mysql_error를 찍어보세요.
아마 옛날 access를 db로 사용했을때... update from tablename 을 썼던걸로 기억 됩니다.
mssql에서는 from이 들어가지 않습니다.
mysql도 마찬가지 입니다.
update 구문에 where 절을 추가해보세요.
지금 형태로는 테이블 전체를 다 업데이트 하게 되어있어서
root 로 console로 접속했을때만 실행될것 같네요.
php로 접속해서는 권한에 따라 안될지도 모르겠네요.