小左闲谈

Jquery校验中国身份证号码是否正确

In 笔记  @2018-01-15

在项目中使用表单时经常会涉及到身份证号码是否正确的校验,下面看看应该中国二代身份证号码应该怎么用Jquery校验呢?

二代身份证校验码的计算方法

二代身份证由17位数字和一位校验码组成,那么校验方法是怎样的呢?

  1. 将前面的身份证号码17位数分别乘以不同的系数。从第一位到第十七位的系数分别为:7-9-10-5-8-4-2-1-6-3-7-9-10-5-8-4-2。
  2. 将这17位数字和系数相乘的结果相加。
  3. 用加出来和除以11,得到余数
  4. 余数只可能有0-1-2-3-4-5-6-7-8-9-10这11个数字。其分别对应的最后一位身份证的号码为1-0-X-9-8-7-6-5-4-3-2。

使用Jquery校验身份证

function check_id(value){
    var arrExp = [7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2];//加权因子  
    var arrValid = [1, 0, "X", 9, 8, 7, 6, 5, 4, 3, 2];//校验码  
    if(/^\d{17}\d|x$/i.test(value)){   
        var sum = 0, idx;  
        for(var i = 0; i < value.length - 1; i++){  
            // 对前17位数字与权值乘积求和  
            sum += parseInt(value.substr(i, 1), 10) * arrExp[i];  
        }  
        // 计算模(固定算法)  
        idx = sum % 11;  
        // 检验第18为是否与校验码相等  
        return arrValid[idx] == value.substr(17, 1).toUpperCase();  
    }else{  
        return false;  
    }  
}

标签: ,   评论: 抢沙发 

【摘】PHP Socket编程 之使用fsockopen()函数

In 学习  @2017-11-07

Socket可以理解为两台计算机相互通信的通道。

用法:使用fsockopen()函数

具体用法详见上篇文章。函数的参数为URL、端口号、一个存放错误编号的变量、一个存放错误信息字符串的变量和超时等待时间。(只有第一个参数是必须的)

常见的端口:

21(FTP)
22(SSH)
23(Telnet)
25(SMTP)
80(Web)
110(POP)
3306(MySql)

其中,组成URl的几个部分为:协议名scheme,主机host,端口号port,文件路径path,查询参数query

当url是http://www.example.com/view.php?week=1#demo时:

Scheme:http
Host:www.example.com
Port:80
Path:View
Query:Week=1
Fragment:#demo

常见的HTTP状态码:

200:OK
204:NO Content
400:Bad Request
401:Unauthorized
403:Forbidden
404:Not Found
408:Time out
5**:Server error

示例

<?PHP  
       function check_url($url){  
              //解析url  
              $url_pieces = parse_url($url);  
              //设置正确的路径和端口号  
              $path =(isset($url_pieces['path']))?$url_pieces['path']:'/';  
              $port =(isset($url_pieces['port']))?$url_pieces['port']:'80';  
              //用fsockopen()尝试连接  
              if($fp =fsockopen($url_pieces['host'],$port,$errno,$errstr,30)){  
                     //建立成功后,向服务器写入数据  
                     $send = "HEAD $path HTTP/1.1\r\n";  
                     $send .= "HOST:$url_pieces['host']\r\n";  
                     $send .= "CONNECTION: CLOSE\r\n\r\n";  
                     fwrite($fp,$send);  
                     //检索HTTP状态码  
                     $data = fgets($fp,128);  
                     //关闭连接  
                     fclose($fp);  
                     //返回状态码和类信息  
                     list($response,$code) = explode(' ',$data);  
                     if(code == 200){  
                            return array($code,'good');  
                     }else{  
                            return array($code,'bad');//数组第二个元素作为css类名  
                     }  
              }else{  
                     //没有连接  
                     return array($errstr,'bad');  
              }  

       }  
       //创建URL列表  
       $urls = array(  
              'http://www.sdust.com',  
              'http://www.example.com'  
       )  
       //调整PHP脚本的时间限制:  
       set_time_limit(0);//无限长时间完成任务  
       //逐个验证url:  
       foreach($urls as $url){  
              list($code,$class) = check_url($url);  
              echo "<p><a href =\"$url\">$url</a>(<span class =\"$class\">$code</span>)</p>";  

       }  
?>

使用fsockopen()函数比fopen()函数的优点:
fopen()只会在PHP中已经将allow_url_fopen设置为真时才能使用,而fsockopen()并没有限制。

本文摘自:http://www.cnblogs.com/baocheng/p/5902560.html

标签: , ,   评论: 抢沙发 

2017国庆骑行环海南岛记(1)

In 生活  @2017-10-23

最近公司里面不大太平,公司发展方向的大调整,人员结构的调整,作为网络部研发人员,其实对上层的决策的影响很有限,同事不少离职了,心情不是太美丽,9月中的某天,跟一同事聊天,说起十一的计划,我是打算去骑车,最好能去看看海,或者大湖啥的,这位小伙伴表示很惊讶,居然有人打算整个假期都在踩单车。

2017国庆环海南岛


当时也没想好去哪里的,只是想出去溜达溜达,于是想到早些时候看到过的环岛,时间好像刚好国庆假期差不多,然后第二天我就准备订机票了。

意外的是,这位小伙伴在我的怂恿下,居然大无畏的要和我一起去,毕竟他不是骑行爱好者,最多的时候应该也就是骑着OFO小环个东湖30多公里吧,要知道环岛的行程里面,如果不走运,一天要骑150km的,我把这些情况都告诉他了,还好,无知者无畏,于是就有了小伙伴了,两个人直接去跟领导请假(担心他会跟不上,请假为了把行程多预留两天),订机票了。

机票:9月29日晚上武汉-海口(海南航空),10月10日上午海口-武汉(南方航空)。

骑行的车子,在骑行驿站租就好了,按天计费,车子是2000左右配置油碟的山地车,环岛是没问题的,租车还有配套的驼包,补胎工具,头盔这些,很周到。

住的问题,就不用太在意了,就骑行驿站就好了,提前订好床位就行,沿路都是有的。

衣服,十一期间的海南,太阳还是相当火辣的,所以需要长袖的骑行服,头巾,手套,防晒霜,于是某宝购置这些必需品,值得注意的是防晒霜记得买小瓶的,超过100ml液体机场安检过不去。

然后就是一直有坚持跑步,一周大约三次,每次最少5km,心情好时间多的时候多跑点,保持耐力,我也敦促同去的小伙伴这段时间回家跑步,锻炼锻炼,体力太次路上很辛苦。

嗯,这样就算准备妥当了。

这个记录啊,边回忆边写完,这不算攻略,只是记录一下而已。至于为什么现在才发,我也很绝望啊,毕竟事情多,我会这周写完,一定做到。

标签: , ,   评论: 抢沙发