/*
* 제작자: LI-NA (hyung778@gmail.com);
* 라이선스: GPL v2;
* 쿠로네코: 다이스키;
*/
$ai = $addon_info;
$allowed_email_list = explode("\r\n", $ai->allowed_email_list);
$allowed_nick_sc_list = explode("\r\n", $ai->allowed_nick_sc_list);
$block_member_extvar_list = explode("\r\n", $ai->block_member_extvar_list);
$logged_info = Context::get('logged_info');
if($logged_info->is_admin == 'Y' && $ai->block_admin == 'y') return;
if($called_position=='before_module_init') {
if(Context::get('act')=='procMemberInsert') {
// if($ai->kakao_email_chk == 'y') {
$kakao_email_chk = explode('@',Context::get('email_address'));
$kakao_email_chk = $kakao_email_chk[1];
if($kakao_email_chk =='kakao.com') $error_msg = 'kakao.com 의 이메일은 임시로 저장된 메일입니다. 수신이 가능한 다른 이메일을 입력해 주세요';
// }
if($ai->block_email_incert == 'y') {
$mail_host = explode('@',Context::get('email_address'));
$mail_host = $mail_host[1];
if(!in_array($mail_host,$allowed_email_list)) $error_msg = '허용되지 않는 메일 주소입니다.';
}
if($ai->block_name_incert != 'n') {
$temp_name = iconv(mb_detect_encoding(Context::get('user_name'), 'auto'),'utf-8',Context::get('user_name'));
if($ai->block_name_incert == 'k' && !preg_match("/[\xA1-\xFE][\xA1-\xFE]/", $temp_name)) $error_msg = '이름은 한글 1자 이상 포함되어야 됩니다.';
$temp_name = explode(' ',Context::get('user_name'));
if($ai->block_name_incert == 'e' && !preg_match("/^([a-zA-Z]+)$/u", $temp_name)) $error_msg = 'Only english is allowed for name.';
}
if($ai->block_name_length != 0) {
if($ai->block_name_length_type == '1' && mb_strlen(Context::get('user_name'),'utf-8') > $ai->block_name_length) $error_msg = '이름은 '.$ai->block_name_length.'자까지만 허용됩니다.';
if($ai->block_name_length_type == '2' && strlen(Context::get('user_name')) > $ai->block_name_length) $error_msg = '이름은 '.$ai->block_name_length.'자까지만 허용됩니다.';
}
if($ai->block_nick_char_incert != 'n') {
if($ai->block_nick_char_incert == 'e' && preg_match('/([a-zA-Z]+)/u',Context::get('nick_name'))) $error_msg = '닉네임에 영문은 허용되지 않습니다.';
if($ai->block_nick_char_incert == 'k' && preg_match('/([가-힣]+)/u',Context::get('nick_name'))) $error_msg = '닉네임에 한글은 허용되지 않습니다.';
}
if($ai->block_nick_sc_incert == 'y') {
$temp_nick = iconv(mb_detect_encoding(Context::get('nick_name'), 'auto'),'utf-8',Context::get('nick_name'));
$temp_nick = str_replace($allowed_nick_sc_list,'a',$temp_nick);
if(!preg_match('/^([가-힣a-zA-Z]+)$/u',$temp_nick)) $error_msg = '닉네임에 특수문자는 허용되지 않습니다.';
}
if($ai->block_nick_length != 0) {
if($ai->block_nick_length_type == '1' && mb_strlen(Context::get('nick_name'),'utf-8') > $ai->block_nick_length) $error_msg = '닉네임은 '.$ai->block_nick_length.'자까지만 허용됩니다.';
if($ai->block_nick_length_type == '2' && strlen(Context::get('nick_name')) > $ai->block_nick_length) $error_msg = '닉네임은 '.$ai->block_nick_length.'자까지만 허용됩니다.';
}
if($ai->block_profile_image_incert == 'y' && Context::get('profile_image')) $error_msg = '프로필 이미지를 등록할 수 없습니다.';
if($ai->block_image_name_incert == 'y' && Context::get('image_name')) $error_msg = '이미지 이름을 등록할 수 없습니다.';
if($ai->block_image_mark_incert == 'y' && Context::get('image_mark')) $error_msg = '이미지 마크를 등록할 수 없습니다.';
}else if(Context::get('act')=='procMemberModifyInfo') {
if($ai->block_email_modifiy == 'y' && $logged_info->email_address != Context::get('email_address')) $error_msg = '메일 주소는 변경하실 수 없습니다.';
if($ai->block_id_modifiy == 'y' && $logged_info->user_id != Context::get('user_id')) $error_msg = '아이디는 변경하실 수 없습니다.';
if($ai->block_name_modifiy == 'y' && $logged_info->user_name != Context::get('user_name')) $error_msg = '이름은 변경하실 수 없습니다.';
if($ai->block_nick_modifiy == 'y' && $logged_info->nick_name != Context::get('nick_name')) $error_msg = '닉네임은 변경하실 수 없습니다.';
// if($ai->kakao_email_chk == 'y') {
$kakao_email_chk = explode('@',Context::get('email_address'));
$kakao_email_chk = $kakao_email_chk[1];
if($kakao_email_chk =='kakao.com') $error_msg = 'kakao.com 의 이메일은 임시로 저장된 메일입니다. 수신이 가능한 다른 이메일을 입력해 주세요';
// }
if($ai->block_email_incert == 'y') {
$mail_host = explode('@',Context::get('email_address'));
$mail_host = $mail_host[1];
if(!in_array($mail_host,$allowed_email_list)) $error_msg = '허용되지 않는 메일 주소입니다.';
}
if($ai->block_name_incert != 'n') {
$temp_name = iconv(mb_detect_encoding(Context::get('user_name'), 'auto'),'utf-8',Context::get('user_name'));
if($ai->block_name_incert == 'k' && !preg_match("/[\xA1-\xFE][\xA1-\xFE]/", $temp_name)) $error_msg = '이름은 한글 1자 이상 포함되어야 됩니다.';
$temp_name = explode(' ',Context::get('user_name'));
if($ai->block_name_incert == 'e' && !preg_match("/^([a-zA-Z]+)$/u", $temp_name)) $error_msg = '이름은 영어만 허용됩니다.';
}
if($ai->block_name_length != 0) {
if($ai->block_name_length_type == '1' && mb_strlen(Context::get('user_name'),'utf-8') > $ai->block_name_length) $error_msg = '이름은 '.$ai->block_name_length.'자까지만 허용됩니다.';
if($ai->block_name_length_type == '2' && strlen(Context::get('user_name')) > $ai->block_name_length) $error_msg = '이름은 '.$ai->block_name_length.'자까지만 허용됩니다.';
}
if($ai->block_nick_char_incert != 'n') {
if($ai->block_nick_char_incert == 'e' && preg_match('/([a-zA-Z]+)/u',Context::get('nick_name'))) $error_msg = '닉네임에 영문은 허용되지 않습니다.';
if($ai->block_nick_char_incert == 'k' && preg_match('/([가-힣]+)/u',Context::get('nick_name'))) $error_msg = '닉네임에 한글은 허용되지 않습니다.';
}
if($ai->block_nick_sc_incert == 'y') {
$temp_nick = iconv(mb_detect_encoding(Context::get('nick_name'), 'auto'),'utf-8',Context::get('nick_name'));
$temp_nick = str_replace($allowed_nick_sc_list,'a',$temp_nick);
if(!preg_match('/^([가-힣a-zA-Z]+)$/u',$temp_nick)) $error_msg = '닉네임에 특수문자는 허용되지 않습니다.';
}
if($ai->block_nick_length != 0) {
if($ai->block_nick_length_type == '1' && mb_strlen(Context::get('nick_name'),'utf-8') > $ai->block_nick_length) $error_msg = '닉네임은 '.$ai->block_nick_length.'자까지만 허용됩니다.';
if($ai->block_nick_length_type == '2' && strlen(Context::get('nick_name')) > $ai->block_nick_length) $error_msg = '닉네임은 '.$ai->block_nick_length.'자까지만 허용됩니다.';
}
if($ai->block_profile_image_change == 'y' && Context::get('profile_image')) $error_msg = '프로필 이미지는 변경하실 수 없습니다';
if($ai->block_image_name_change == 'y' && Context::get('image_name')) $error_msg = '이미지 이름은 변경하실 수 없습니다';
if($ai->block_image_mark_change == 'y' && Context::get('image_mark')) $error_msg = '이미지 마크는 변경하실 수 없습니다';
if($ai->block_member_extvar == 'y') {
foreach($block_member_extvar_list as $key => $val) {
if($logged_info->$val != Context::get($val)) $error_msg = $val.'은(는) 변경하실 수 없습니다';
}
}
}else if(Context::get('act')=='procMemberModifyEmailAddress' || Context::get('act')=='procMemberResetAuthMail') {
$kakao_email_chk = explode('@',Context::get('email_address'));
$kakao_email_chk = $kakao_email_chk[1];
if($kakao_email_chk =='kakao.com') $error_msg = 'kakao.com 의 이메일은 임시로 저장된 메일입니다. 수신이 가능한 다른 이메일을 입력해 주세요';
if($ai->block_email_incert == 'y') {
$mail_host = explode('@',Context::get('email_address'));
$mail_host = $mail_host[1];
if(!in_array($mail_host,$allowed_email_list)) $error_msg = '허용되지 않는 메일 주소입니다.';
}
}
if($error_msg) {
$error_info = new stdClass;
$error_info->msg = $error_msg;
$error_info->id = Context::get('xe_validator_id');
$_SESSION['addon_error'] = $error_info;
header('HTTP/1.1 301 Moved Permanently');
header('Location: '.Context::get('error_return_url'),true, 301);
Context::close();
exit();
}
}else if($called_position=='after_module_proc' && $_SESSION['addon_error']) {
$error_info = $_SESSION['addon_error'];
unset($_SESSION['addon_error']);
Context::set('XE_VALIDATOR_MESSAGE',$error_info->msg);
Context::set('XE_VALIDATOR_MESSAGE_TYPE','error');
Context::set('XE_VALIDATOR_ID',$error_info->id);
}else if($called_position=='before_display_content' && $ai->block_html_blocked == 'y') {
$block_list = '';
$disabled_list = '';
if(Context::get('act')=='dispMemberSignUpForm') {
if($ai->block_profile_image_incert == 'y') $disabled_list = $disabled_list.'\'profile_image\',';
if($ai->block_image_name_incert == 'y') $disabled_list = $disabled_list.'\'image_name\',';
if($ai->block_image_mark_incert == 'y') $disabled_list = $disabled_list.'\'image_mark\',';
}else if(Context::get('act')=='dispMemberModifyInfo') {
if($ai->kakao_email_chk == 'y') $block_list = $block_list.'\'email_address\',';
if($ai->block_email_modifiy == 'y') $block_list = $block_list.'\'email_address\',';
if($ai->block_id_modifiy == 'y') $block_list = $block_list.'\'user_id\',';
if($ai->block_name_modifiy == 'y') $block_list = $block_list.'\'user_name\',';
if($ai->block_nick_modifiy == 'y') $block_list = $block_list.'\'nick_name\',';
if($ai->block_profile_image_change == 'y') $disabled_list = $disabled_list.'\'profile_image\',';
if($ai->block_image_name_change == 'y') $disabled_list = $disabled_list.'\'image_name\',';
if($ai->block_image_mark_change == 'y') $disabled_list = $disabled_list.'\'image_mark\',';
if($ai->block_member_extvar == 'y') {
foreach($block_member_extvar_list as $key => $val) {
$block_list = $block_list.'\''.$val.'\',';
}
}
}
$block_list = $block_list.'\'tamp\'';
$disabled_list = $disabled_list.'\'tamp\'';
$code = "";
if(Context::get('act')=='dispMemberSignUpForm' || Context::get('act')=='dispMemberModifyInfo') Context::addHtmlHeader($code);
}
?>
/*
* 제작자: LI-NA (hyung778@gmail.com);
* 라이선스: GPL v2;
* 쿠로네코: 다이스키;
*/
$ai = $addon_info;
$allowed_email_list = explode("\r\n", $ai->allowed_email_list);
$allowed_nick_sc_list = explode("\r\n", $ai->allowed_nick_sc_list);
$block_member_extvar_list = explode("\r\n", $ai->block_member_extvar_list);
$logged_info = Context::get('logged_info');
if($logged_info->is_admin == 'Y' && $ai->block_admin == 'y') return;
if($called_position=='before_module_init') {
if(Context::get('act')=='procMemberInsert') {
// if($ai->kakao_email_chk == 'y') {
$kakao_email_chk = explode('@',Context::get('email_address'));
$kakao_email_chk = $kakao_email_chk[1];
if($kakao_email_chk =='kakao.com') $error_msg = 'kakao.com 의 이메일은 임시로 저장된 메일입니다. 수신이 가능한 다른 이메일을 입력해 주세요';
// }
if($ai->block_email_incert == 'y') {
$mail_host = explode('@',Context::get('email_address'));
$mail_host = $mail_host[1];
if(!in_array($mail_host,$allowed_email_list)) $error_msg = '허용되지 않는 메일 주소입니다.';
}
if($ai->block_name_incert != 'n') {
$temp_name = iconv(mb_detect_encoding(Context::get('user_name'), 'auto'),'utf-8',Context::get('user_name'));
if($ai->block_name_incert == 'k' && !preg_match("/[\xA1-\xFE][\xA1-\xFE]/", $temp_name)) $error_msg = '이름은 한글 1자 이상 포함되어야 됩니다.';
$temp_name = explode(' ',Context::get('user_name'));
if($ai->block_name_incert == 'e' && !preg_match("/^([a-zA-Z]+)$/u", $temp_name)) $error_msg = 'Only english is allowed for name.';
}
if($ai->block_name_length != 0) {
if($ai->block_name_length_type == '1' && mb_strlen(Context::get('user_name'),'utf-8') > $ai->block_name_length) $error_msg = '이름은 '.$ai->block_name_length.'자까지만 허용됩니다.';
if($ai->block_name_length_type == '2' && strlen(Context::get('user_name')) > $ai->block_name_length) $error_msg = '이름은 '.$ai->block_name_length.'자까지만 허용됩니다.';
}
if($ai->block_nick_char_incert != 'n') {
if($ai->block_nick_char_incert == 'e' && preg_match('/([a-zA-Z]+)/u',Context::get('nick_name'))) $error_msg = '닉네임에 영문은 허용되지 않습니다.';
if($ai->block_nick_char_incert == 'k' && preg_match('/([가-힣]+)/u',Context::get('nick_name'))) $error_msg = '닉네임에 한글은 허용되지 않습니다.';
}
if($ai->block_nick_sc_incert == 'y') {
$temp_nick = iconv(mb_detect_encoding(Context::get('nick_name'), 'auto'),'utf-8',Context::get('nick_name'));
$temp_nick = str_replace($allowed_nick_sc_list,'a',$temp_nick);
if(!preg_match('/^([가-힣a-zA-Z]+)$/u',$temp_nick)) $error_msg = '닉네임에 특수문자는 허용되지 않습니다.';
}
if($ai->block_nick_length != 0) {
if($ai->block_nick_length_type == '1' && mb_strlen(Context::get('nick_name'),'utf-8') > $ai->block_nick_length) $error_msg = '닉네임은 '.$ai->block_nick_length.'자까지만 허용됩니다.';
if($ai->block_nick_length_type == '2' && strlen(Context::get('nick_name')) > $ai->block_nick_length) $error_msg = '닉네임은 '.$ai->block_nick_length.'자까지만 허용됩니다.';
}
if($ai->block_profile_image_incert == 'y' && Context::get('profile_image')) $error_msg = '프로필 이미지를 등록할 수 없습니다.';
if($ai->block_image_name_incert == 'y' && Context::get('image_name')) $error_msg = '이미지 이름을 등록할 수 없습니다.';
if($ai->block_image_mark_incert == 'y' && Context::get('image_mark')) $error_msg = '이미지 마크를 등록할 수 없습니다.';
}else if(Context::get('act')=='procMemberModifyInfo') {
if($ai->block_email_modifiy == 'y' && $logged_info->email_address != Context::get('email_address')) $error_msg = '메일 주소는 변경하실 수 없습니다.';
if($ai->block_id_modifiy == 'y' && $logged_info->user_id != Context::get('user_id')) $error_msg = '아이디는 변경하실 수 없습니다.';
if($ai->block_name_modifiy == 'y' && $logged_info->user_name != Context::get('user_name')) $error_msg = '이름은 변경하실 수 없습니다.';
if($ai->block_nick_modifiy == 'y' && $logged_info->nick_name != Context::get('nick_name')) $error_msg = '닉네임은 변경하실 수 없습니다.';
// if($ai->kakao_email_chk == 'y') {
$kakao_email_chk = explode('@',Context::get('email_address'));
$kakao_email_chk = $kakao_email_chk[1];
if($kakao_email_chk =='kakao.com') $error_msg = 'kakao.com 의 이메일은 임시로 저장된 메일입니다. 수신이 가능한 다른 이메일을 입력해 주세요';
// }
if($ai->block_email_incert == 'y') {
$mail_host = explode('@',Context::get('email_address'));
$mail_host = $mail_host[1];
if(!in_array($mail_host,$allowed_email_list)) $error_msg = '허용되지 않는 메일 주소입니다.';
}
if($ai->block_name_incert != 'n') {
$temp_name = iconv(mb_detect_encoding(Context::get('user_name'), 'auto'),'utf-8',Context::get('user_name'));
if($ai->block_name_incert == 'k' && !preg_match("/[\xA1-\xFE][\xA1-\xFE]/", $temp_name)) $error_msg = '이름은 한글 1자 이상 포함되어야 됩니다.';
$temp_name = explode(' ',Context::get('user_name'));
if($ai->block_name_incert == 'e' && !preg_match("/^([a-zA-Z]+)$/u", $temp_name)) $error_msg = '이름은 영어만 허용됩니다.';
}
if($ai->block_name_length != 0) {
if($ai->block_name_length_type == '1' && mb_strlen(Context::get('user_name'),'utf-8') > $ai->block_name_length) $error_msg = '이름은 '.$ai->block_name_length.'자까지만 허용됩니다.';
if($ai->block_name_length_type == '2' && strlen(Context::get('user_name')) > $ai->block_name_length) $error_msg = '이름은 '.$ai->block_name_length.'자까지만 허용됩니다.';
}
if($ai->block_nick_char_incert != 'n') {
if($ai->block_nick_char_incert == 'e' && preg_match('/([a-zA-Z]+)/u',Context::get('nick_name'))) $error_msg = '닉네임에 영문은 허용되지 않습니다.';
if($ai->block_nick_char_incert == 'k' && preg_match('/([가-힣]+)/u',Context::get('nick_name'))) $error_msg = '닉네임에 한글은 허용되지 않습니다.';
}
if($ai->block_nick_sc_incert == 'y') {
$temp_nick = iconv(mb_detect_encoding(Context::get('nick_name'), 'auto'),'utf-8',Context::get('nick_name'));
$temp_nick = str_replace($allowed_nick_sc_list,'a',$temp_nick);
if(!preg_match('/^([가-힣a-zA-Z]+)$/u',$temp_nick)) $error_msg = '닉네임에 특수문자는 허용되지 않습니다.';
}
if($ai->block_nick_length != 0) {
if($ai->block_nick_length_type == '1' && mb_strlen(Context::get('nick_name'),'utf-8') > $ai->block_nick_length) $error_msg = '닉네임은 '.$ai->block_nick_length.'자까지만 허용됩니다.';
if($ai->block_nick_length_type == '2' && strlen(Context::get('nick_name')) > $ai->block_nick_length) $error_msg = '닉네임은 '.$ai->block_nick_length.'자까지만 허용됩니다.';
}
if($ai->block_profile_image_change == 'y' && Context::get('profile_image')) $error_msg = '프로필 이미지는 변경하실 수 없습니다';
if($ai->block_image_name_change == 'y' && Context::get('image_name')) $error_msg = '이미지 이름은 변경하실 수 없습니다';
if($ai->block_image_mark_change == 'y' && Context::get('image_mark')) $error_msg = '이미지 마크는 변경하실 수 없습니다';
if($ai->block_member_extvar == 'y') {
foreach($block_member_extvar_list as $key => $val) {
if($logged_info->$val != Context::get($val)) $error_msg = $val.'은(는) 변경하실 수 없습니다';
}
}
}else if(Context::get('act')=='procMemberModifyEmailAddress' || Context::get('act')=='procMemberResetAuthMail') {
$kakao_email_chk = explode('@',Context::get('email_address'));
$kakao_email_chk = $kakao_email_chk[1];
if($kakao_email_chk =='kakao.com') $error_msg = 'kakao.com 의 이메일은 임시로 저장된 메일입니다. 수신이 가능한 다른 이메일을 입력해 주세요';
if($ai->block_email_incert == 'y') {
$mail_host = explode('@',Context::get('email_address'));
$mail_host = $mail_host[1];
if(!in_array($mail_host,$allowed_email_list)) $error_msg = '허용되지 않는 메일 주소입니다.';
}
}
if($error_msg) {
$error_info = new stdClass;
$error_info->msg = $error_msg;
$error_info->id = Context::get('xe_validator_id');
$_SESSION['addon_error'] = $error_info;
header('HTTP/1.1 301 Moved Permanently');
header('Location: '.Context::get('error_return_url'),true, 301);
Context::close();
exit();
}
}else if($called_position=='after_module_proc' && $_SESSION['addon_error']) {
$error_info = $_SESSION['addon_error'];
unset($_SESSION['addon_error']);
Context::set('XE_VALIDATOR_MESSAGE',$error_info->msg);
Context::set('XE_VALIDATOR_MESSAGE_TYPE','error');
Context::set('XE_VALIDATOR_ID',$error_info->id);
}else if($called_position=='before_display_content' && $ai->block_html_blocked == 'y') {
$block_list = '';
$disabled_list = '';
if(Context::get('act')=='dispMemberSignUpForm') {
if($ai->block_profile_image_incert == 'y') $disabled_list = $disabled_list.'\'profile_image\',';
if($ai->block_image_name_incert == 'y') $disabled_list = $disabled_list.'\'image_name\',';
if($ai->block_image_mark_incert == 'y') $disabled_list = $disabled_list.'\'image_mark\',';
}else if(Context::get('act')=='dispMemberModifyInfo') {
if($ai->kakao_email_chk == 'y') $block_list = $block_list.'\'email_address\',';
if($ai->block_email_modifiy == 'y') $block_list = $block_list.'\'email_address\',';
if($ai->block_id_modifiy == 'y') $block_list = $block_list.'\'user_id\',';
if($ai->block_name_modifiy == 'y') $block_list = $block_list.'\'user_name\',';
if($ai->block_nick_modifiy == 'y') $block_list = $block_list.'\'nick_name\',';
if($ai->block_profile_image_change == 'y') $disabled_list = $disabled_list.'\'profile_image\',';
if($ai->block_image_name_change == 'y') $disabled_list = $disabled_list.'\'image_name\',';
if($ai->block_image_mark_change == 'y') $disabled_list = $disabled_list.'\'image_mark\',';
if($ai->block_member_extvar == 'y') {
foreach($block_member_extvar_list as $key => $val) {
$block_list = $block_list.'\''.$val.'\',';
}
}
}
$block_list = $block_list.'\'tamp\'';
$disabled_list = $disabled_list.'\'tamp\'';
$code = "";
if(Context::get('act')=='dispMemberSignUpForm' || Context::get('act')=='dispMemberModifyInfo') Context::addHtmlHeader($code);
}
?>
/*
* 제작자: LI-NA (hyung778@gmail.com);
* 라이선스: GPL v2;
* 쿠로네코: 다이스키;
*/
$ai = $addon_info;
$allowed_email_list = explode("\r\n", $ai->allowed_email_list);
$allowed_nick_sc_list = explode("\r\n", $ai->allowed_nick_sc_list);
$block_member_extvar_list = explode("\r\n", $ai->block_member_extvar_list);
$logged_info = Context::get('logged_info');
if($logged_info->is_admin == 'Y' && $ai->block_admin == 'y') return;
if($called_position=='before_module_init') {
if(Context::get('act')=='procMemberInsert') {
// if($ai->kakao_email_chk == 'y') {
$kakao_email_chk = explode('@',Context::get('email_address'));
$kakao_email_chk = $kakao_email_chk[1];
if($kakao_email_chk =='kakao.com') $error_msg = 'kakao.com 의 이메일은 임시로 저장된 메일입니다. 수신이 가능한 다른 이메일을 입력해 주세요';
// }
if($ai->block_email_incert == 'y') {
$mail_host = explode('@',Context::get('email_address'));
$mail_host = $mail_host[1];
if(!in_array($mail_host,$allowed_email_list)) $error_msg = '허용되지 않는 메일 주소입니다.';
}
if($ai->block_name_incert != 'n') {
$temp_name = iconv(mb_detect_encoding(Context::get('user_name'), 'auto'),'utf-8',Context::get('user_name'));
if($ai->block_name_incert == 'k' && !preg_match("/[\xA1-\xFE][\xA1-\xFE]/", $temp_name)) $error_msg = '이름은 한글 1자 이상 포함되어야 됩니다.';
$temp_name = explode(' ',Context::get('user_name'));
if($ai->block_name_incert == 'e' && !preg_match("/^([a-zA-Z]+)$/u", $temp_name)) $error_msg = 'Only english is allowed for name.';
}
if($ai->block_name_length != 0) {
if($ai->block_name_length_type == '1' && mb_strlen(Context::get('user_name'),'utf-8') > $ai->block_name_length) $error_msg = '이름은 '.$ai->block_name_length.'자까지만 허용됩니다.';
if($ai->block_name_length_type == '2' && strlen(Context::get('user_name')) > $ai->block_name_length) $error_msg = '이름은 '.$ai->block_name_length.'자까지만 허용됩니다.';
}
if($ai->block_nick_char_incert != 'n') {
if($ai->block_nick_char_incert == 'e' && preg_match('/([a-zA-Z]+)/u',Context::get('nick_name'))) $error_msg = '닉네임에 영문은 허용되지 않습니다.';
if($ai->block_nick_char_incert == 'k' && preg_match('/([가-힣]+)/u',Context::get('nick_name'))) $error_msg = '닉네임에 한글은 허용되지 않습니다.';
}
if($ai->block_nick_sc_incert == 'y') {
$temp_nick = iconv(mb_detect_encoding(Context::get('nick_name'), 'auto'),'utf-8',Context::get('nick_name'));
$temp_nick = str_replace($allowed_nick_sc_list,'a',$temp_nick);
if(!preg_match('/^([가-힣a-zA-Z]+)$/u',$temp_nick)) $error_msg = '닉네임에 특수문자는 허용되지 않습니다.';
}
if($ai->block_nick_length != 0) {
if($ai->block_nick_length_type == '1' && mb_strlen(Context::get('nick_name'),'utf-8') > $ai->block_nick_length) $error_msg = '닉네임은 '.$ai->block_nick_length.'자까지만 허용됩니다.';
if($ai->block_nick_length_type == '2' && strlen(Context::get('nick_name')) > $ai->block_nick_length) $error_msg = '닉네임은 '.$ai->block_nick_length.'자까지만 허용됩니다.';
}
if($ai->block_profile_image_incert == 'y' && Context::get('profile_image')) $error_msg = '프로필 이미지를 등록할 수 없습니다.';
if($ai->block_image_name_incert == 'y' && Context::get('image_name')) $error_msg = '이미지 이름을 등록할 수 없습니다.';
if($ai->block_image_mark_incert == 'y' && Context::get('image_mark')) $error_msg = '이미지 마크를 등록할 수 없습니다.';
}else if(Context::get('act')=='procMemberModifyInfo') {
if($ai->block_email_modifiy == 'y' && $logged_info->email_address != Context::get('email_address')) $error_msg = '메일 주소는 변경하실 수 없습니다.';
if($ai->block_id_modifiy == 'y' && $logged_info->user_id != Context::get('user_id')) $error_msg = '아이디는 변경하실 수 없습니다.';
if($ai->block_name_modifiy == 'y' && $logged_info->user_name != Context::get('user_name')) $error_msg = '이름은 변경하실 수 없습니다.';
if($ai->block_nick_modifiy == 'y' && $logged_info->nick_name != Context::get('nick_name')) $error_msg = '닉네임은 변경하실 수 없습니다.';
// if($ai->kakao_email_chk == 'y') {
$kakao_email_chk = explode('@',Context::get('email_address'));
$kakao_email_chk = $kakao_email_chk[1];
if($kakao_email_chk =='kakao.com') $error_msg = 'kakao.com 의 이메일은 임시로 저장된 메일입니다. 수신이 가능한 다른 이메일을 입력해 주세요';
// }
if($ai->block_email_incert == 'y') {
$mail_host = explode('@',Context::get('email_address'));
$mail_host = $mail_host[1];
if(!in_array($mail_host,$allowed_email_list)) $error_msg = '허용되지 않는 메일 주소입니다.';
}
if($ai->block_name_incert != 'n') {
$temp_name = iconv(mb_detect_encoding(Context::get('user_name'), 'auto'),'utf-8',Context::get('user_name'));
if($ai->block_name_incert == 'k' && !preg_match("/[\xA1-\xFE][\xA1-\xFE]/", $temp_name)) $error_msg = '이름은 한글 1자 이상 포함되어야 됩니다.';
$temp_name = explode(' ',Context::get('user_name'));
if($ai->block_name_incert == 'e' && !preg_match("/^([a-zA-Z]+)$/u", $temp_name)) $error_msg = '이름은 영어만 허용됩니다.';
}
if($ai->block_name_length != 0) {
if($ai->block_name_length_type == '1' && mb_strlen(Context::get('user_name'),'utf-8') > $ai->block_name_length) $error_msg = '이름은 '.$ai->block_name_length.'자까지만 허용됩니다.';
if($ai->block_name_length_type == '2' && strlen(Context::get('user_name')) > $ai->block_name_length) $error_msg = '이름은 '.$ai->block_name_length.'자까지만 허용됩니다.';
}
if($ai->block_nick_char_incert != 'n') {
if($ai->block_nick_char_incert == 'e' && preg_match('/([a-zA-Z]+)/u',Context::get('nick_name'))) $error_msg = '닉네임에 영문은 허용되지 않습니다.';
if($ai->block_nick_char_incert == 'k' && preg_match('/([가-힣]+)/u',Context::get('nick_name'))) $error_msg = '닉네임에 한글은 허용되지 않습니다.';
}
if($ai->block_nick_sc_incert == 'y') {
$temp_nick = iconv(mb_detect_encoding(Context::get('nick_name'), 'auto'),'utf-8',Context::get('nick_name'));
$temp_nick = str_replace($allowed_nick_sc_list,'a',$temp_nick);
if(!preg_match('/^([가-힣a-zA-Z]+)$/u',$temp_nick)) $error_msg = '닉네임에 특수문자는 허용되지 않습니다.';
}
if($ai->block_nick_length != 0) {
if($ai->block_nick_length_type == '1' && mb_strlen(Context::get('nick_name'),'utf-8') > $ai->block_nick_length) $error_msg = '닉네임은 '.$ai->block_nick_length.'자까지만 허용됩니다.';
if($ai->block_nick_length_type == '2' && strlen(Context::get('nick_name')) > $ai->block_nick_length) $error_msg = '닉네임은 '.$ai->block_nick_length.'자까지만 허용됩니다.';
}
if($ai->block_profile_image_change == 'y' && Context::get('profile_image')) $error_msg = '프로필 이미지는 변경하실 수 없습니다';
if($ai->block_image_name_change == 'y' && Context::get('image_name')) $error_msg = '이미지 이름은 변경하실 수 없습니다';
if($ai->block_image_mark_change == 'y' && Context::get('image_mark')) $error_msg = '이미지 마크는 변경하실 수 없습니다';
if($ai->block_member_extvar == 'y') {
foreach($block_member_extvar_list as $key => $val) {
if($logged_info->$val != Context::get($val)) $error_msg = $val.'은(는) 변경하실 수 없습니다';
}
}
}else if(Context::get('act')=='procMemberModifyEmailAddress' || Context::get('act')=='procMemberResetAuthMail') {
$kakao_email_chk = explode('@',Context::get('email_address'));
$kakao_email_chk = $kakao_email_chk[1];
if($kakao_email_chk =='kakao.com') $error_msg = 'kakao.com 의 이메일은 임시로 저장된 메일입니다. 수신이 가능한 다른 이메일을 입력해 주세요';
if($ai->block_email_incert == 'y') {
$mail_host = explode('@',Context::get('email_address'));
$mail_host = $mail_host[1];
if(!in_array($mail_host,$allowed_email_list)) $error_msg = '허용되지 않는 메일 주소입니다.';
}
}
if($error_msg) {
$error_info = new stdClass;
$error_info->msg = $error_msg;
$error_info->id = Context::get('xe_validator_id');
$_SESSION['addon_error'] = $error_info;
header('HTTP/1.1 301 Moved Permanently');
header('Location: '.Context::get('error_return_url'),true, 301);
Context::close();
exit();
}
}else if($called_position=='after_module_proc' && $_SESSION['addon_error']) {
$error_info = $_SESSION['addon_error'];
unset($_SESSION['addon_error']);
Context::set('XE_VALIDATOR_MESSAGE',$error_info->msg);
Context::set('XE_VALIDATOR_MESSAGE_TYPE','error');
Context::set('XE_VALIDATOR_ID',$error_info->id);
}else if($called_position=='before_display_content' && $ai->block_html_blocked == 'y') {
$block_list = '';
$disabled_list = '';
if(Context::get('act')=='dispMemberSignUpForm') {
if($ai->block_profile_image_incert == 'y') $disabled_list = $disabled_list.'\'profile_image\',';
if($ai->block_image_name_incert == 'y') $disabled_list = $disabled_list.'\'image_name\',';
if($ai->block_image_mark_incert == 'y') $disabled_list = $disabled_list.'\'image_mark\',';
}else if(Context::get('act')=='dispMemberModifyInfo') {
if($ai->kakao_email_chk == 'y') $block_list = $block_list.'\'email_address\',';
if($ai->block_email_modifiy == 'y') $block_list = $block_list.'\'email_address\',';
if($ai->block_id_modifiy == 'y') $block_list = $block_list.'\'user_id\',';
if($ai->block_name_modifiy == 'y') $block_list = $block_list.'\'user_name\',';
if($ai->block_nick_modifiy == 'y') $block_list = $block_list.'\'nick_name\',';
if($ai->block_profile_image_change == 'y') $disabled_list = $disabled_list.'\'profile_image\',';
if($ai->block_image_name_change == 'y') $disabled_list = $disabled_list.'\'image_name\',';
if($ai->block_image_mark_change == 'y') $disabled_list = $disabled_list.'\'image_mark\',';
if($ai->block_member_extvar == 'y') {
foreach($block_member_extvar_list as $key => $val) {
$block_list = $block_list.'\''.$val.'\',';
}
}
}
$block_list = $block_list.'\'tamp\'';
$disabled_list = $disabled_list.'\'tamp\'';
$code = "";
if(Context::get('act')=='dispMemberSignUpForm' || Context::get('act')=='dispMemberModifyInfo') Context::addHtmlHeader($code);
}
?>
/*
* 제작자: LI-NA (hyung778@gmail.com);
* 라이선스: GPL v2;
* 쿠로네코: 다이스키;
*/
$ai = $addon_info;
$allowed_email_list = explode("\r\n", $ai->allowed_email_list);
$allowed_nick_sc_list = explode("\r\n", $ai->allowed_nick_sc_list);
$block_member_extvar_list = explode("\r\n", $ai->block_member_extvar_list);
$logged_info = Context::get('logged_info');
if($logged_info->is_admin == 'Y' && $ai->block_admin == 'y') return;
if($called_position=='before_module_init') {
if(Context::get('act')=='procMemberInsert') {
// if($ai->kakao_email_chk == 'y') {
$kakao_email_chk = explode('@',Context::get('email_address'));
$kakao_email_chk = $kakao_email_chk[1];
if($kakao_email_chk =='kakao.com') $error_msg = 'kakao.com 의 이메일은 임시로 저장된 메일입니다. 수신이 가능한 다른 이메일을 입력해 주세요';
// }
if($ai->block_email_incert == 'y') {
$mail_host = explode('@',Context::get('email_address'));
$mail_host = $mail_host[1];
if(!in_array($mail_host,$allowed_email_list)) $error_msg = '허용되지 않는 메일 주소입니다.';
}
if($ai->block_name_incert != 'n') {
$temp_name = iconv(mb_detect_encoding(Context::get('user_name'), 'auto'),'utf-8',Context::get('user_name'));
if($ai->block_name_incert == 'k' && !preg_match("/[\xA1-\xFE][\xA1-\xFE]/", $temp_name)) $error_msg = '이름은 한글 1자 이상 포함되어야 됩니다.';
$temp_name = explode(' ',Context::get('user_name'));
if($ai->block_name_incert == 'e' && !preg_match("/^([a-zA-Z]+)$/u", $temp_name)) $error_msg = 'Only english is allowed for name.';
}
if($ai->block_name_length != 0) {
if($ai->block_name_length_type == '1' && mb_strlen(Context::get('user_name'),'utf-8') > $ai->block_name_length) $error_msg = '이름은 '.$ai->block_name_length.'자까지만 허용됩니다.';
if($ai->block_name_length_type == '2' && strlen(Context::get('user_name')) > $ai->block_name_length) $error_msg = '이름은 '.$ai->block_name_length.'자까지만 허용됩니다.';
}
if($ai->block_nick_char_incert != 'n') {
if($ai->block_nick_char_incert == 'e' && preg_match('/([a-zA-Z]+)/u',Context::get('nick_name'))) $error_msg = '닉네임에 영문은 허용되지 않습니다.';
if($ai->block_nick_char_incert == 'k' && preg_match('/([가-힣]+)/u',Context::get('nick_name'))) $error_msg = '닉네임에 한글은 허용되지 않습니다.';
}
if($ai->block_nick_sc_incert == 'y') {
$temp_nick = iconv(mb_detect_encoding(Context::get('nick_name'), 'auto'),'utf-8',Context::get('nick_name'));
$temp_nick = str_replace($allowed_nick_sc_list,'a',$temp_nick);
if(!preg_match('/^([가-힣a-zA-Z]+)$/u',$temp_nick)) $error_msg = '닉네임에 특수문자는 허용되지 않습니다.';
}
if($ai->block_nick_length != 0) {
if($ai->block_nick_length_type == '1' && mb_strlen(Context::get('nick_name'),'utf-8') > $ai->block_nick_length) $error_msg = '닉네임은 '.$ai->block_nick_length.'자까지만 허용됩니다.';
if($ai->block_nick_length_type == '2' && strlen(Context::get('nick_name')) > $ai->block_nick_length) $error_msg = '닉네임은 '.$ai->block_nick_length.'자까지만 허용됩니다.';
}
if($ai->block_profile_image_incert == 'y' && Context::get('profile_image')) $error_msg = '프로필 이미지를 등록할 수 없습니다.';
if($ai->block_image_name_incert == 'y' && Context::get('image_name')) $error_msg = '이미지 이름을 등록할 수 없습니다.';
if($ai->block_image_mark_incert == 'y' && Context::get('image_mark')) $error_msg = '이미지 마크를 등록할 수 없습니다.';
}else if(Context::get('act')=='procMemberModifyInfo') {
if($ai->block_email_modifiy == 'y' && $logged_info->email_address != Context::get('email_address')) $error_msg = '메일 주소는 변경하실 수 없습니다.';
if($ai->block_id_modifiy == 'y' && $logged_info->user_id != Context::get('user_id')) $error_msg = '아이디는 변경하실 수 없습니다.';
if($ai->block_name_modifiy == 'y' && $logged_info->user_name != Context::get('user_name')) $error_msg = '이름은 변경하실 수 없습니다.';
if($ai->block_nick_modifiy == 'y' && $logged_info->nick_name != Context::get('nick_name')) $error_msg = '닉네임은 변경하실 수 없습니다.';
// if($ai->kakao_email_chk == 'y') {
$kakao_email_chk = explode('@',Context::get('email_address'));
$kakao_email_chk = $kakao_email_chk[1];
if($kakao_email_chk =='kakao.com') $error_msg = 'kakao.com 의 이메일은 임시로 저장된 메일입니다. 수신이 가능한 다른 이메일을 입력해 주세요';
// }
if($ai->block_email_incert == 'y') {
$mail_host = explode('@',Context::get('email_address'));
$mail_host = $mail_host[1];
if(!in_array($mail_host,$allowed_email_list)) $error_msg = '허용되지 않는 메일 주소입니다.';
}
if($ai->block_name_incert != 'n') {
$temp_name = iconv(mb_detect_encoding(Context::get('user_name'), 'auto'),'utf-8',Context::get('user_name'));
if($ai->block_name_incert == 'k' && !preg_match("/[\xA1-\xFE][\xA1-\xFE]/", $temp_name)) $error_msg = '이름은 한글 1자 이상 포함되어야 됩니다.';
$temp_name = explode(' ',Context::get('user_name'));
if($ai->block_name_incert == 'e' && !preg_match("/^([a-zA-Z]+)$/u", $temp_name)) $error_msg = '이름은 영어만 허용됩니다.';
}
if($ai->block_name_length != 0) {
if($ai->block_name_length_type == '1' && mb_strlen(Context::get('user_name'),'utf-8') > $ai->block_name_length) $error_msg = '이름은 '.$ai->block_name_length.'자까지만 허용됩니다.';
if($ai->block_name_length_type == '2' && strlen(Context::get('user_name')) > $ai->block_name_length) $error_msg = '이름은 '.$ai->block_name_length.'자까지만 허용됩니다.';
}
if($ai->block_nick_char_incert != 'n') {
if($ai->block_nick_char_incert == 'e' && preg_match('/([a-zA-Z]+)/u',Context::get('nick_name'))) $error_msg = '닉네임에 영문은 허용되지 않습니다.';
if($ai->block_nick_char_incert == 'k' && preg_match('/([가-힣]+)/u',Context::get('nick_name'))) $error_msg = '닉네임에 한글은 허용되지 않습니다.';
}
if($ai->block_nick_sc_incert == 'y') {
$temp_nick = iconv(mb_detect_encoding(Context::get('nick_name'), 'auto'),'utf-8',Context::get('nick_name'));
$temp_nick = str_replace($allowed_nick_sc_list,'a',$temp_nick);
if(!preg_match('/^([가-힣a-zA-Z]+)$/u',$temp_nick)) $error_msg = '닉네임에 특수문자는 허용되지 않습니다.';
}
if($ai->block_nick_length != 0) {
if($ai->block_nick_length_type == '1' && mb_strlen(Context::get('nick_name'),'utf-8') > $ai->block_nick_length) $error_msg = '닉네임은 '.$ai->block_nick_length.'자까지만 허용됩니다.';
if($ai->block_nick_length_type == '2' && strlen(Context::get('nick_name')) > $ai->block_nick_length) $error_msg = '닉네임은 '.$ai->block_nick_length.'자까지만 허용됩니다.';
}
if($ai->block_profile_image_change == 'y' && Context::get('profile_image')) $error_msg = '프로필 이미지는 변경하실 수 없습니다';
if($ai->block_image_name_change == 'y' && Context::get('image_name')) $error_msg = '이미지 이름은 변경하실 수 없습니다';
if($ai->block_image_mark_change == 'y' && Context::get('image_mark')) $error_msg = '이미지 마크는 변경하실 수 없습니다';
if($ai->block_member_extvar == 'y') {
foreach($block_member_extvar_list as $key => $val) {
if($logged_info->$val != Context::get($val)) $error_msg = $val.'은(는) 변경하실 수 없습니다';
}
}
}else if(Context::get('act')=='procMemberModifyEmailAddress' || Context::get('act')=='procMemberResetAuthMail') {
$kakao_email_chk = explode('@',Context::get('email_address'));
$kakao_email_chk = $kakao_email_chk[1];
if($kakao_email_chk =='kakao.com') $error_msg = 'kakao.com 의 이메일은 임시로 저장된 메일입니다. 수신이 가능한 다른 이메일을 입력해 주세요';
if($ai->block_email_incert == 'y') {
$mail_host = explode('@',Context::get('email_address'));
$mail_host = $mail_host[1];
if(!in_array($mail_host,$allowed_email_list)) $error_msg = '허용되지 않는 메일 주소입니다.';
}
}
if($error_msg) {
$error_info = new stdClass;
$error_info->msg = $error_msg;
$error_info->id = Context::get('xe_validator_id');
$_SESSION['addon_error'] = $error_info;
header('HTTP/1.1 301 Moved Permanently');
header('Location: '.Context::get('error_return_url'),true, 301);
Context::close();
exit();
}
}else if($called_position=='after_module_proc' && $_SESSION['addon_error']) {
$error_info = $_SESSION['addon_error'];
unset($_SESSION['addon_error']);
Context::set('XE_VALIDATOR_MESSAGE',$error_info->msg);
Context::set('XE_VALIDATOR_MESSAGE_TYPE','error');
Context::set('XE_VALIDATOR_ID',$error_info->id);
}else if($called_position=='before_display_content' && $ai->block_html_blocked == 'y') {
$block_list = '';
$disabled_list = '';
if(Context::get('act')=='dispMemberSignUpForm') {
if($ai->block_profile_image_incert == 'y') $disabled_list = $disabled_list.'\'profile_image\',';
if($ai->block_image_name_incert == 'y') $disabled_list = $disabled_list.'\'image_name\',';
if($ai->block_image_mark_incert == 'y') $disabled_list = $disabled_list.'\'image_mark\',';
}else if(Context::get('act')=='dispMemberModifyInfo') {
if($ai->kakao_email_chk == 'y') $block_list = $block_list.'\'email_address\',';
if($ai->block_email_modifiy == 'y') $block_list = $block_list.'\'email_address\',';
if($ai->block_id_modifiy == 'y') $block_list = $block_list.'\'user_id\',';
if($ai->block_name_modifiy == 'y') $block_list = $block_list.'\'user_name\',';
if($ai->block_nick_modifiy == 'y') $block_list = $block_list.'\'nick_name\',';
if($ai->block_profile_image_change == 'y') $disabled_list = $disabled_list.'\'profile_image\',';
if($ai->block_image_name_change == 'y') $disabled_list = $disabled_list.'\'image_name\',';
if($ai->block_image_mark_change == 'y') $disabled_list = $disabled_list.'\'image_mark\',';
if($ai->block_member_extvar == 'y') {
foreach($block_member_extvar_list as $key => $val) {
$block_list = $block_list.'\''.$val.'\',';
}
}
}
$block_list = $block_list.'\'tamp\'';
$disabled_list = $disabled_list.'\'tamp\'';
$code = "";
if(Context::get('act')=='dispMemberSignUpForm' || Context::get('act')=='dispMemberModifyInfo') Context::addHtmlHeader($code);
}
?>
태그공부 - 엑셀화일을 업로드해서 MYSQL에 밀어 넣는 소스
You cannot see this page without javascript.
손님들이 엑셀로 정리한 파일들을 디비에 밀어 넣으려구 노가다(울트라 에딧으로 파인드엔 리플레이스... ㅠ.ㅠ)작업을 하다가 도저히 이래선 안되겠다 싶어서 php스쿨에 와봤지만 따른 초절정 고수님의 귀뜸만 보일뿐 정확한 방법이 안보여서 직접 제작한뒤 올려 봅니다. 고수님들이 보시기엔 별거 아니겠지만... 초보분들껜 좀 도움이 되지 않을까 싶어서.. 우선 엑셀을 CSV파일로 저장해야 하고요.. 저장시엔 규격에 맞게 하는건 당연히 아실테고.. 저장된 CSV파일과 저장될 테이블 명을 넣고 전송 버튼을 누르면 서버에 파일을 임시로 올린뒤 읽어 들여서 디비에 저장한뒤 올린 CSV파일을 지우는 방식입니다. 엑셀에 맨 첫줄은 컬럼명이 들어 가는 줄이므로 꼭 컬럼명을 정확히 적어서 올려 주시면 됩니다. 그리고 맨 마지막 컬럼엔 빈칸이 있으면 콤마 카운트가 잘못되서리.. 에러가 납니다. 모든데이타가 다 들어 있는 열을 맨 마지막 열로 설정하시길 바랍니다. 그럼 조금이라도 유용하게 쓰이길 바라겠습니다. (--)(__)(--) <?php /* 이 코드는 mysql테이블이 이미 설정되 있을경우 엑셀로 정리한 데이터를 쉽게 넣을수 있게 만든 코드 입니다. 접속함수는 각자 서버 환경에 맞게 설정하시고 Database 이름엔 이미 생성된 삽입할 테이블 이름을 정확히 넣어 주셔야 합니다. 엑셀 파일에서 전체 데이터를 선택하신뒤 Ctl + F버튼을 눌러 , (콤마) 를 찾습니다. (,를 기준으로 나누기 때문에 기존 데이터에 , 가 있으면 배열에 갯수가 안맞아서 에러가 납니다) 다른 부호나 빈 공간으로 Replace 하시기 바랍니다. 엑셀파일은 이미 생성된 테이블의 규격에 맞게 정보를 정리 하신뒤(특히 날짜 07/15/05 등은... 2005-07-05등으로 정확히 넣어 주셔야 합니다.) 맨 첫째 줄은 필드의 이름을 정확히 넣으셔야 합니다. (예: 필드가 c_id, c_name, c_dob, c_addr1, c_addr2 처럼 5개일경우라도 원하시는 필드 2개만 필요하시면 컬럼 두개만 작성하셔도 무방합니다. 나머지는 NULL로 되어도 괜찮을떈 NULL로 입력 됩니다.) 마지막으로 제일 중요한건 맨 마지막 컬럼은 빈칸이 있으면 안됩니다. (콤마 숫자를 잘못세서 배열 갯수가 헷갈려 에러가 날수가 있습니다.) 모든 데이타가 다 들어가는 열을 맨 오른쪽으로 엑셀에서 옮기시기 바랍니다. 별거 아닌 코딩이므로 자유롭게 배포 하셔도 좋습니다. 허접합니다. 초보 분들께 조금이나 도움이 되기를... --;;;; kero(kennethjro@msn.com) */ require_once('Connections/csv.php'); // mysql 접속 함수와 장소는 각자 맞게 설정 if($_POST['dbName']) { //함수 db_name이 넘어 오면 실행 시킨다. copy($csvFile,"copy.csv"); //csv 파일을 현재 디렉토리에 저장 시킨다 $csvLoad = file("copy.csv"); // 저장된 파일을 읽어 들인다 $csvArray = split("n",implode($csvLoad)); // 행으로 나누어서 배열에 저장 for($i=1;$i<count($csvArray)-1;$i++) { // 행으로 나눠진 배열 갯수 만큼 돌린다($enter[0]에는 필드 이름이 있으므로 $i는 1번 부터 시작하고 총 갯수는 $csvArray에서 1를 뺀다 $field = split(",",addslashes($csvArray[$i])); //각 행을 콤마를 기준으로 각 필드에 나누고 DB입력시 에러가 없게 하기위해서 addslashes함수를 이용해 를 붙인다 $value = "'" . trim(implode("','",$field)) . "'"; //나누어진 각 필드에 앞뒤에 공백을 뺸뒤 ''따옴표를 붙이고 ,콤마로 나눠서 한줄로 만든다. $insertSQL = sprintf("INSERT INTO %s (%s) VALUES (%s)", $_POST['dbName'], $csvArray[0], $value); // php쿼리문을 이용해서 입력한다. mysql_select_db($database_csv, $csv); //$database_csv 와 $csv 함수는 각자 맞게 설정 $Result = mysql_query($insertSQL, $csv) or die(mysql_error()); //$csv 함수는 각자 맞게 설정 } unlink("copy.csv"); //입력이 된후 업로드 된 파일을 삭제한다 if($Result) { echo("<script>window.alert('New DB add!')</script>"); // 업로드 가 성공적으로 되었으면 경고창을 띄워서 알려준다. } } ?> <html> <head> <title>CSV File to MySQL</title> </head> <body> <form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post" enctype="multipart/form-data" name="form1"> <table width="200" border="0" cellpadding="5" cellspacing="0"> <tr> <td>Database Name<br><input name="dbName" type="text" id="dbName"></td> </tr> <tr> <td>CSV file<br><input name="csvFile" type="file" id="csvFile"></td> </tr> <tr> <td><input type="submit" name="Submit" value="Submit"></td> </tr> </table> </form> </body> </html>
(안심) 짧은 주소는 :
입니다
Copyright by Myceo 2008 All rights reserved
수원시 팔달구 인계동 1017-3 2층
☏1600-0324
Made By Myceo
sketchbook5, 스케치북5
sketchbook5, 스케치북5
X
나눔글꼴 설치 안내
이 PC에는 나눔글꼴 이 설치되어 있지 않습니다.
이 사이트를 나눔글꼴 로 보기 위해서는나눔글꼴 을 설치해야 합니다.
설치
취소