2016년 7월 29일 금요일

네이버페이 자바스크립트로 비활성화

네이버 페이를 연동시에 상품이 품절 인 경우는 비활성화를 해주어야 한다.


문제는 한개의 페이지가 아니라 옵션을 선택시 품절 여부를 보여 줄 경우 스크립트로 수정하는 방법을 모른다는 것. 네이버에 물어봐도 제대로 답변해 주지 않는다. 그냥 숨김 처리하라고 하는 데, 버튼이 있던 자리가 없어지는 건 아무래도 이상하다.


소스를 보니 가능 할 것 같아서 해 봤더니, 되긴 된다.


<div id="naverPayBtn"></div>
<script type="text/javascript" src="http://test-pay.naver.com/customer/js/naverPayButton.js" charset="UTF-8"></script>
<script type="text/javascript" >
//<![CDATA[
var npBtnOption ={
BUTTON_KEY: "naverPayBtnCertiKey", // 네이버페이에서 제공받은 버튼 인증 키 입력
TYPE: "A", // 버튼 모음 종류 설정
COLOR: 1, // 버튼 모음의 색 설정
COUNT: 2, //버튼 개수 설정. 구매하기 버튼만 있으면(장바구니 페이지) 1, 찜하기 버튼도 있으면(상품 상세 페이지) 2를 입력.
ENABLE: "Y", // 품절 등의 이유로 버튼 모음을 비활성화할 때에는 "N" 입력
EMBED_ID : "naverPayBtn",
BUY_BUTTON_HANDLER: buy_nc, // 구매하기 버튼 이벤트 Handler 함수 등록, 품절인 경우 not_buy_nc 함수 사용
//BUY_BUTTON_LINK_URL: "", // 링크 주소 (필요한 경우만 사용)
WISHLIST_BUTTON_HANDLER: wishlist_nc, // 찜하기 버튼 이벤트 Handler 함수 등록
//WISHLIST_BUTTON_LINK_URL: "", // 찜하기 팝업 링크 주소
"":""
}
naver.NaverPayButton.apply(npBtnOption);


//버튼기능(네이버페이 구매하기)
function buy_nc() {
...
return false;
}
function wishlist_nc() {
// 네이버페이로 찜 정보를 등록하는 가맹점 페이지 팝업 창 생성.
// 해당 페이지에서 찜 정보 등록 후 네이버페이 찜 페이지로 이동.
...
return false;
}
function not_buy_nc() {
alert("죄송합니다. 네이버페이로 구매가 불가한 상품입니다.");
return false;
}

</script>

 


아래의 코드로  ENABLE 상태를 변경.


	naverPayStatusChange: function(enable,option,btnHandler) {
$("#"+option.EMBED_ID).text("");
option.ENABLE = enable;
option.BUY_BUTTON_HANDLER = btnHandler;
naver.NaverPayButton.apply(npBtnOption);
}


ex) naverPayStatusChange("N",npBtnOption,not_buy_nc);

ps. 사용자가 네이버페이로 결제시 결제 완료, 실패 리턴이 없음. 그냥 보내면 끝이므로 주의

2016년 7월 18일 월요일

[asp] 스트링 변수에서 xml 가져오기

xml 형식은 다음과 같다.
<COLOR COLORCD="79" CODE="09" CODENAME="09 클래식블랙"/><COLOR COLORCD="9366" CODE="92" CODENAME="92 차콜+네이비옥스포드"/><COLOR COLORCD="9367" CODE="93" CODENAME="93 블랙+차콜하운드투스"/>

변수에서 가져오는 방법은 여기에서 확인 하였다.

위와 같이 해서 확인 하면 에러 발생.

XML 문서에서는 최상위 요소 하나만 허용됩니다.

변수 앞뒤로 <root>, </root> 를 붙여서 사용.

 

최종 코드
dim nodeCount, XMLDom,NodeList,theNode,Node, tmp
Set XMLDom = CreateObject("MSXML2.DomDocument.6.0")
XMLDom.async = false
tmp = "<root>"+rs("COLOR_XML")+"</root>"
XMLDom.LoadXML ( tmp )

theNode = "//COLOR"

Set NodeList = XMLDom.SelectNodes(theNode)
nodeCount = XMLDom.SelectNodes(theNode).length

if XMLDom.parseerror = 0 then
Response.Write(nodeCount)
For Each Node in NodeList
response.write(Node.GetAttribute("CODENAME") & "<br>")
Next
else
response.Write("Error Parsing Results")
end if
Set XMLDom = Nothing

2016년 7월 15일 금요일

dns_txt.c:(.text+0x35): undefined reference to `__res_query'

qmail 설치시 에러 발생

gcc -DBIND_8_COMPAT -O2 -o dktest dktest.o -L. -ldomainkeys -lcrypto `cat dns.lib`
./libdomainkeys.a(dns_txt.o): In function `dns_text':
dns_txt.c:(.text+0x35): undefined reference to `__res_query'
dns_txt.c:(.text+0xcf): undefined reference to `__dn_expand'
dns_txt.c:(.text+0x147): undefined reference to `__dn_expand'
collect2: ld returned 1 exit status
해결
yum install bind-libs

2016년 7월 13일 수요일

determining if ip address is already in use for device eth0 centos

determining if ip address is already in use for device eth0

위와 같은 오류가 발생.

아무리 찾아 봐도 원인을 알 수 없다.

ARPCHECK=no 옵션을 주면 에러가 안 난다고 하는데, 왠지 찝찝하다.

해당 옵션이 무엇인지에 대한 설명은 /usr/share/doc/initscripts-9.03.40/sysconfig.txt 에 나와 있다.
    ARPCHECKn=yes|no
If set to 'no', ifup will not try to determine, if requested ip address
is used by other machine in network.
Defaults to 'yes'.

네트워크에 있는 다른 머신에 의해 결정한다는 건데, 이름에서 추측하건데 arp 체크를 통해 서 중복되는 ip를 찾는 것 같다.

근데!!! 중복되는 IP 가 없어~!!!!

arping 을 해 보라는 둥.. tcpdump 를 잡아 보라는 둥.. 전부 해봐도 특별한 이유가 없다..

xenserver로 설치 한 거라서 조금 특별한 원인이 있지 않을 까도 싶다.

결국 그냥 사용하는 걸로..;;

 

참조:https://blog.cles.jp/item/6718




160928 추가.

ip 셋팅이 되어 있는 부분을 command로 다시 설정하면서 꼬이는 것 같다.
ifconfig eth0 down
service network restart

오류가 나는 인터페이스를 다운 시킨 후 네트워크를 재시작하면 없어진다.

원격에서 작업시 매우 주의!!

2016년 7월 4일 월요일

라이선스를 제공할 원격 데스크톱 라이선스 서버가 없으므로 원격 세션 연결 이 끊어졌습니다.

"라이선스를 제공할 원격 데스크톱 라이선스 서버가 없으므로 원격 세션 연결이 끊어졌습니다." 라는 에러 메시지가 나오면서 원격접속이 안된다.

라이선스 서버를 설치하고 그룹정책에서 적용을 해야 되는 데, 적용을 안 해 놔서 생기는 문제였다.

  1. mstsc /admin 명령으로 관리 세션은 연결이 가능 하다.

  2. 아래 사이트에서 자세히 설명해 놓음.
    http://tempdb.tistory.com/105
    http://taesany.tistory.com/105

  3. 원격에서는 regedit 권한 수정이 안된다.http://taesany.tistory.com/105 블로그에서 psexec 툴로 하면 가능 한것 같음. 해보지 않음

2016년 6월 24일 금요일

centos7 netstat

netstat 명령어가 기본적으로 사라지고, ss 명령어가 생겼다.

 

listening sockets  보기.
# ss -l

 

모든 소켓 보기.
# ss - a

 

TCP 소켓 보기.
# ss - t

 

UDP 소켓 보기.
# ss - u

 

소켓 사용하는 프로세스 보기.
# ss - p

 

소켓 사용하는 메모리 보기.
# ss - m

 

 

참조

No default or ui configuration directive found

centos 7 iso 파일로 설치 중 오류.

No default or ui configuration directive found

파일 잘못 받아서 생기는 문제.

iso 파일을 로컬에 받지 않고, 네트워크 드라이브로 연결된 폴더에 넣었더니, 문제가 발생한 것 같음.

다른 파일로 다시 받았더니, 파일 크기 자체가 다름.