新闻出版总署信息中心作为CIP数据的惟一制作单位,负责CIP数据的制作,任何单位不得自行制作,保证了数据的唯一性、权威性,从而CIP具有反盗版作用。
(1)对于正规出版的普通图书10位的ISBN
它由10位数字组成,这l0位数字由组号、出版者号、书名号、校验号这四部分组成,其间用“- ”相连,校验号是ISBN号的最后一位数值,它能够校验出ISBN号是 正确,即:将ISBN的1- 9位数字依次顺序乘以10-2这9个数字,将这些乘积之和再加上校验号,假如能被11整除,则这个ISBN号足正确的,校验号只能是1位教,当为10时, 记为罗马数字X。
例: ISBN 7- 5233- 3536-9,手工计算:
7*10+5*9+2*8+3*7+3*6+3*5+5*4+3*3+2*6=226,加上校验位9,(226+9)/11=21.3634,不能被11整除,所以该书为盗版书。
(2)而对于13位的ISBN号的校验方法是不一样的。
例:ISBN 978-0-393-04002-9 前缀978 (代表图书),中间一部分与ISBN相同, 最后一位是校验码,校验位的加权算法与l0位ISBN的算法不同。具体算法是:用1分别乘ISBN的前12位中的奇数位,用3乘以偶数位,乘积之和以10为模,10与模值的差值再对10取模(即取各位的数字)即可得到校验位的值,其职范围应该是0~9.
验证 ISBN 978-0-393-04002-9 是否为正确的书号
位置Total 1 2 3 4 5 6 7 8 9 10 11 12 13
ISBN 9 7 8 0 3 9 3 0 4 0 0 2 9
权重 1 3 1 3 1 3 1 3 1 3 1 3
乘积 9 21 8 0 3 27 3 0 4 0 0 6 和是81 以10为模 可得校验位为9,正确。
一、使用JS获取客户端IP的几个方法方法一(只针对IE且客户端的IE允许AcitiveX运行,通过台:XP,SERVER03,2000)。
获取客户端IP代码:
代码如下:
<HTML>
<HEAD>
<TITLE>GetLocalIP</TITLE>
</HEAD>
<BODY>
获取IP:
<script language="JavaScript">function GetLocalIPAddr(){ var
oSetting = nullvar ip = nulltry{ oSetting = new
ActiveXObject("rcbdyctl.Setting")ip = oSetting.GetIPAddressif
(ip.length == 0){ return "没有连接到Internet"} oSetting = null}catch(e){
return ip} return ip} document.write(GetLocalIPAddr()+"<br/>")
</script>
</BODY>
</HTML>
方法二(所有的平台及浏览器):
获取客户端处在网络中的IP,前提是客户得联网。使用的是新浪接口。
代码如下:
<html>
<head>
<meta http-equiv="Content-Type" content="text/htmlcharset=gb2312">
<title>JavaScript获取客户端IP[利用新浪接口]</title>
</head>
<body>
<script type="text/javascript" src="http://counter.sina.com.cn/ip/" charset="gb2312"></script> <!--获取接口数据,注意charset -->
<script type="text/javascript">
document.writeln("IP地址:"+ILData[0]+"<br />")//输出接口数据中的IP地址
document.writeln("地址类型:"+ILData[1]+"<br />")//输出接口数据中的IP地址的类型
document.writeln("地址类型:"+ILData[2]+"<br />")//输出接口数据中的IP地址的省市
document.writeln("地址类型:"+ILData[3]+"<br />")//输出接口数据中的IP地址的
document.writeln("地址类型:"+ILData[4]+"<br />")//输出接口数据中的IP地址的运营商
</script>
</body>
</html>
方法三(所有的平台及浏览器):
使用的搜狐接口
代码如下:
<script src="http://pv.sohu.com/cityjson?ie=utf-8"></script>
<script type="text/javascript">
document.write(returnCitySN["cip"]+','+returnCitySN["cname"])
</script>