구 우편번호 -> 신 우편번호
본문
제목과 같이 변경관련 그누, 피에치피스클,구글 등 정보를 많이 찾아 헤메다.,,
결론은
1.구 번호를 엑셀로 다운 받은 뒤
2.우체국 변환프로그램으로 변환
3.다시 csv 파일로 변환까지는 성공했는데
4.putty로 집어넣는데 애러가 나더군요,,
마이피에치비어드민에서도
#1045 - Access denied for user '너모야민쯩까'@'localhost' (using password: YES)
구분자 형식에는 이상이 없구 필드 항목도 이상이 없구요,,
참 어렵네요,,,
그래서 죽어라 헤메다 돌고 돌아 결국 이런 글을 만났는데
그게
이 분이더라능,,,ㅋ
다음은 그내용입니다.
아침에 2012/02/22 – 오늘 할 일은..라는 글을 쓴 후로 csv 파일에 저장된 회원 정보를 DB에 저장하는 코들 작성했다.
테스트 환경은 PHP 5.2.17, MySQL 5.5.15이다.
우선 테스트에 사용된 DB 테이블은 아래와 같이 생성했다.
`mb_no` int(11) NOT NULL AUTO_INCREMENT,
`mb_id` varchar(20) NOT NULL,
`mb_password` varchar(255) NOT NULL,
`mb_name` varchar(255) NOT NULL,
PRIMARY KEY (`mb_no`),
KEY `mb_id` (`mb_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 ;
CSV 파일의 구조와 내용은 아래 이미지와 같다.
아래는 csv 파일의 내용을 DB에 입력하는 소스코드이다.
include_once(“./dbconfig.php”);
// DB Connect
$connect = mysql_connect($mysql_host, $mysql_user, $mysql_password);
if(!$connect) {
die(“Can’t Connect DB : ” . mysql_error());
}
@mysql_query(” set names utf8 “);
$db_selected = mysql_select_db($mysql_db, $connect);
if(!$db_selected) {
die(“Can’t Use $mysql_db : ” . mysql_error());
}
function mysql_password($value) // 비밀번호 암호화 함수
{
$sql = ” select password(‘$value’) as pass “;
$result = mysql_query($sql);
$row = mysql_fetch_assoc($result);
return $row[pass];
}
$csv = “./member.csv”;
$lines = file($csv); // member.csv 파일 전체를 배열로 읽어들임
$count = count($lines); // 파일의 라인 수
for($i = 1; $i < $count; $i++) {
// csv 파일의 두번째 라인부터 DB에 입력해야 하므로 $i = 1
$str = explode(“,”, rtrim($lines[$i], “rn”));
$mb_id = trim(strip_tags(mysql_escape_string(addslashes($str[0]))));
if(!$mb_id) { // mb_id 없으면 다음 라인
continue;
}
$mb_password = mysql_password(trim(mysql_escape_string(addslashes($str[1]))));
$mb_name = trim(strip_tags(mysql_escape_string(addslashes($str[2]))));
$sql = ” insert into mb_old (mb_id, mb_password, mb_name) values (‘$mb_id’, ‘$mb_password’, ‘$mb_name’) “;
$result = mysql_query($sql);
if(!$result) { // 쿼리 에러 시 다음 라인
continue;
}
}
?>
색상으로 표시한 부분을 현재 사용하는 필드명으로 순차적으로 바꾸고 했는데도 안되더라구요,,,
뭘 잘못한걸까요? 위의 크리에이티브 내용은 하지 않았습니다. 이미 필드가 있으므로....
insert into mb_old -> 사용하고 있는 insert into zipcode로 해습니다. 해결되면 팁으로 올릴 수 있을 거 같은데...막바지에 와서 어렵네요,,도움 좀 바라겠습니다,