关于这几天学习的一点知识(js,thinkphp等)

来源:互联网 发布:淘宝优选好店有假货吗 编辑:程序博客网 时间:2024/04/29 19:43

自己在家看了一点ThinkPHP的东西,想在这个框架上进行php程序的开发,有些东西看起来简单,可是做起来就没那么简单了,比如说php这个东西,以前一直以为php很简单,因为那时候不知道在什么地方看到有人说php的变量没有类型限制,所以也就不必考虑是不是int,是不是float,(虽然这个是php简单的一个优点,但也是缺点),发现编程这个东西,还是自己去练练好,只看,永远都学不会的,我是菜鸟,但是我相信,总有一天,我也会成为一只老鸟~~大笑

  言归正传,总结了一下,这些天用到的一些知识,留作以后查找使用,也给需要的人用,希望能有点启发。

1 ThinkPHP如何调用外部js文件

    这里有几种方法,因为ThinkPHP中定义了很多系统常量,所以我们可以通过使用ThinkPHP的系统常量来调用

   (1) 对于一些多个项目公用的一些js或者css文件,可以将这些文件放到站点根目录下的Public文件夹下,ThinkPHP中提供了一个__PUBLIC__系统常量,这个常量代指的就是根目录下的Public目录,所以可以通过__PUBLIC__/js/common.js来调用Public/js/目录下的common.js文件

    (2)还有一种方法,这个也是我自己觉得最好用的,就是将这些文件放到项目目录下的Tpl文件夹下的Public目录下,这样可以通过../Public/js/common.js来调用了,这样方便,也可以使得js文件更加的条理(个人认为);

 

2 ThinkPHP中验证码的使用

   在做网站后台登陆的时候,想让网站后天看起来更加规范一点,便会用到验证码,这也防止了一些机器程序的恶意登陆,ThinkPHP中提供了验证码的一些类库,在使用的时候将扩展类库中的ORG.Util.Image 类库和 ORG.Util.String 类库导入。

   首先,在要显示验证码的类中创建一个verify方法,比如在IndexAction.class.php文件中,创建以下代码:

Public function verify(){  import("ORG.Util.Image");    Image::buildImageVerify();}

这里我也碰到了一点问题,就是在写入以上代码的时候,验证码没有出现,后来我在上面加了一个Image::showAdvVerify();,便能显示了,但是很多网站上的文章,都只是上面这种形式,可能是我没有写好,还需要在研究研究,在这里,有知道的,麻烦大家告诉我一声,谢谢啦~  这样代码便成了下面这个样子:

    /**     * +-------------------------------------------     * 验证码函数     * +-------------------------------------------     */    public function verify(){        import("ORG.Util.Image");        Image::buildImageVerify();        Image::showAdvVerify();    }

接下来便是验证码的使用了,一般情况下,验证码是在表单中使用的,这里也经常会看到网站上的验证码是有刷新功能的,所以这里我用到了js来实现验证码的刷新,代码如下:(代码有借鉴网络)

        <!--            验证码刷新函数        -->        <script language="JavaScript">            function changeVerify(){                    var timenow = new Date().getTime();                    document.getElementById('verifyImg').src='__URL__/verify/'+timenow;              }        </script>


接下来便是在表单中显示验证码了,验证码一般是以图片格式出现的,所以这里是以htm中img标签来引用验证码,代码如下:

            验证码:<input type="text" name="verify">            <img id="verifyImg" src="__URL__/verify" onClick="changeVerify()" title="点击刷新验证码" />


 

下面便成了验证码的验证了,在ThinkPHP中,验证码是可以通过$_SESSION['verify']来得到的,但是这里将这个验证码的内容通过了md5加密,所以在进行比较的时候,要使用以下方式:

            if(SESSION['verify'] != md5(POST['verify'])) {                echo "<script type='text/javascript'> alert('验证码错误'); history.go(-1);</script>";            }else {echo "验证成功";    }


 

这样,在ThinkPHP框架的支持下,验证码便很简单了,

 

今天就先写这些了,上面这些内容,在很多人看来都很简单,甚至都觉得不值得一提,但我相信,这些东西会有需要的人,而且,这个也在见证着我一天天的进步~~

 

原创粉丝点击