db 잘못건들어서 wr_name 필드값이 전부.. 정보
db 잘못건들어서 wr_name 필드값이 전부..- PASSPIA.NET 자기소개 아이디로 검색 회원게시물
- 조회 1,663
- 댓글 8
본문
update g4_테이블 set wr_name=REPLACE(ca_name,'이거에서','저걸로')
급한 맘에
이렇게 작성이 되어서 작성자 이름이 전부 카테고리 이름으로 변경되어 버렷습니다
문외한인 저로서는 해결방법 도저히 못찾고 고수분들의 도움 요청합니다
mb_id 에 따른 wr_name 으로 일치시키는
구문이라든지의
그런 해결방법좀 부탁드립니다
야밤에 흘린 식은땀이..그나마 딴짓 하다 안날린게 다행이라는 생각이 ....^^;
댓글 전체
자세한... 무슨말인지 알수가 없답니다. 차근차근 차분하게 상세히 말씀하세요~
정상적인 처리구문인
(특정게시판의 게시물들의 특정 카테고리 이름을 변경하는 작업)
update g4_boardtable set ca_name=REPLACE(ca_name,'기존이름','새로운 이름')
이랬어야 되는데
update g4_boardtable set wr_name=REPLACE(ca_name,'기존이름','새로운 이름')
이러는 바람에
글 작성자 이름(wr_name) 필드값이 '새로운 이름" 값으로 변경되버린 겁니다
그래서 정상복원 (백업 안된상태인지라..)되려면
멤버테이블에서 mb_id, mb_nick 을 불러와서
g4_boardtable 의 wr_name 값을 입력할 방법이 없는가에 대한 질문입니다..
관심 가져 주신점 감사드립니다
^^;
(특정게시판의 게시물들의 특정 카테고리 이름을 변경하는 작업)
update g4_boardtable set ca_name=REPLACE(ca_name,'기존이름','새로운 이름')
이랬어야 되는데
update g4_boardtable set wr_name=REPLACE(ca_name,'기존이름','새로운 이름')
이러는 바람에
글 작성자 이름(wr_name) 필드값이 '새로운 이름" 값으로 변경되버린 겁니다
그래서 정상복원 (백업 안된상태인지라..)되려면
멤버테이블에서 mb_id, mb_nick 을 불러와서
g4_boardtable 의 wr_name 값을 입력할 방법이 없는가에 대한 질문입니다..
관심 가져 주신점 감사드립니다
^^;
test.php
<?
include_once("./common.php");
$sql = " select wr_id, mb_id where g4_write_보드이름 ";
$result = sql_query($sql);
$success = 0;
$failed = 0;
$failed_wrid = "";
for($i=0; $row=sql_fetch_array($result); $i++){
$mb = get_member($row[mb_id], "mb_name, mb_nick");
if($mb[mb_name] || $mb[mb_nick]){
$insert_name = $mb[mb_name]; //혹은 닉네임을 넣고싶다면 $insert_name = $mb[mb_nick];
$success++;
} else {
$insert_name = "일반사용자"; //만약 회원이 쓴 글이 아니라면 일반사용자라고 넣습니다.
$failed++;
$failed_wrid .= " $row[wr_id] ";
}
$sql = " update g4_write_보드이름 set wr_name = '$insert_name' where wr_id = '$row[wr_id]' ";
sql_query($sql);
}
echo " 성공 : $success <br>";
echo " 실패 : $failed <br>";
echo $failed_wrid;
?>
혹시 이런 형태를 말씀하시는 건가요?
보드에 mb_id에 따른 회원의 닉네임이나 회원의 이름을 넣는..
마지막에 $failed_wrid 를 참조하여 회원의 이름이나 닉네임이 들어가지 않은 곳을 찾아 직접 수정해주는것도 나쁘지 않은 방법이라 생각됩니다 ^^;
<?
include_once("./common.php");
$sql = " select wr_id, mb_id where g4_write_보드이름 ";
$result = sql_query($sql);
$success = 0;
$failed = 0;
$failed_wrid = "";
for($i=0; $row=sql_fetch_array($result); $i++){
$mb = get_member($row[mb_id], "mb_name, mb_nick");
if($mb[mb_name] || $mb[mb_nick]){
$insert_name = $mb[mb_name]; //혹은 닉네임을 넣고싶다면 $insert_name = $mb[mb_nick];
$success++;
} else {
$insert_name = "일반사용자"; //만약 회원이 쓴 글이 아니라면 일반사용자라고 넣습니다.
$failed++;
$failed_wrid .= " $row[wr_id] ";
}
$sql = " update g4_write_보드이름 set wr_name = '$insert_name' where wr_id = '$row[wr_id]' ";
sql_query($sql);
}
echo " 성공 : $success <br>";
echo " 실패 : $failed <br>";
echo $failed_wrid;
?>
혹시 이런 형태를 말씀하시는 건가요?
보드에 mb_id에 따른 회원의 닉네임이나 회원의 이름을 넣는..
마지막에 $failed_wrid 를 참조하여 회원의 이름이나 닉네임이 들어가지 않은 곳을 찾아 직접 수정해주는것도 나쁘지 않은 방법이라 생각됩니다 ^^;
대략 답변 주신게 맞는것 같습니다만
실행이 안되고 잇습니다
'잘못된 방법으로 변수가 정의되었습니다.'
이건 무슨 현상일려나요~?
실행이 안되고 잇습니다
'잘못된 방법으로 변수가 정의되었습니다.'
이건 무슨 현상일려나요~?
문법 틀린곳이 없어보이는데요 ^^;
아~~$sql = " select wr_id, mb_id where g4_write_보드이름 "; 요기 where 를 from 으로;;
g4_write_보드이름 요녀석은 고치려는 테이블명으로 바꾸신 후
$success 관련 $failed 관련 부분을 주석처리 하신 후
그누보드가 설치된 폴더에 파일을 저장하신 후 실행시켜보셔요
$success, $failed가 기존 php기본 변수??와 중복되서 그런것 같습니다..만?? 이유는 모르겠네요 ㅎㅎ;;
$success 를 $a, $failed 를 $b 로 하신후 사용해보시는 것도 ^^;;
나머지변수들은 매번 사용하던 변수라 이상없을겁니다.
아~~$sql = " select wr_id, mb_id where g4_write_보드이름 "; 요기 where 를 from 으로;;
g4_write_보드이름 요녀석은 고치려는 테이블명으로 바꾸신 후
$success 관련 $failed 관련 부분을 주석처리 하신 후
그누보드가 설치된 폴더에 파일을 저장하신 후 실행시켜보셔요
$success, $failed가 기존 php기본 변수??와 중복되서 그런것 같습니다..만?? 이유는 모르겠네요 ㅎㅎ;;
$success 를 $a, $failed 를 $b 로 하신후 사용해보시는 것도 ^^;;
나머지변수들은 매번 사용하던 변수라 이상없을겁니다.
말쑴하신대로 이것저것 만져서 성공한 소스는 아래와 같습니다..
거듭 감사드립니다
건강하시고요...일일이 수작업 중이었는데 혹시나 하고 들어왔는데 단숨에 해결봣습니다
감사드립니다
꾸벅
<?
define("_GNUBOARD_", TRUE);
include_once("./_common.php");
include_once("./_head.php");
$sql = " select wr_id, mb_id from g4_write_보드이름 ";
$result = sql_query($sql);
//$success = 0;
//$failed = 0;
//$failed_wrid = "";
for($i=0; $row=sql_fetch_array($result); $i++){
$mb = get_member($row[mb_id], "mb_name, mb_nick");
if($mb[mb_name] || $mb[mb_nick]){
$insert_name = $mb[mb_nick]; //혹은 닉네임을 넣고싶다면 $insert_name = $mb[mb_nick];
// $success++;
} else {
$insert_name = "일반사용자"; //만약 회원이 쓴 글이 아니라면 일반사용자라고 넣습니다.
// $failed++;
// $failed_wrid .= " $row[wr_id] ";
}
$sql = " update g4_write_보드이름 set wr_name = '$insert_name' where wr_id = '$row[wr_id]' ";
sql_query($sql);
}
//echo " 성공 : $success <br>";
//echo " 실패 : $failed <br>";
//echo $failed_wrid;
?>
거듭 감사드립니다
건강하시고요...일일이 수작업 중이었는데 혹시나 하고 들어왔는데 단숨에 해결봣습니다
감사드립니다
꾸벅
<?
define("_GNUBOARD_", TRUE);
include_once("./_common.php");
include_once("./_head.php");
$sql = " select wr_id, mb_id from g4_write_보드이름 ";
$result = sql_query($sql);
//$success = 0;
//$failed = 0;
//$failed_wrid = "";
for($i=0; $row=sql_fetch_array($result); $i++){
$mb = get_member($row[mb_id], "mb_name, mb_nick");
if($mb[mb_name] || $mb[mb_nick]){
$insert_name = $mb[mb_nick]; //혹은 닉네임을 넣고싶다면 $insert_name = $mb[mb_nick];
// $success++;
} else {
$insert_name = "일반사용자"; //만약 회원이 쓴 글이 아니라면 일반사용자라고 넣습니다.
// $failed++;
// $failed_wrid .= " $row[wr_id] ";
}
$sql = " update g4_write_보드이름 set wr_name = '$insert_name' where wr_id = '$row[wr_id]' ";
sql_query($sql);
}
//echo " 성공 : $success <br>";
//echo " 실패 : $failed <br>";
//echo $failed_wrid;
?>
이래서 백업이 중요합니다. ^^!
22