2017-03-07 / Yii2
yii2的一个强大之处之一就是他的Form组件,既方便又安全。具体的rules使用方法这里就不提了, 如果你的一般验证规则,如require email captcha等可用,而unique却不起作用,可以朝下看.已经过实验,没有问题
我这里用的是高级模板,普通模板没用过,应该差不多, 在yii2首次安装之后,common/models/User.php就有username和email的unique规则,因为我前后台分离,所以将User.php分别在frontend和backend复制了一份,删除了common下的User.php,规则如下:
    /**
     * @inheritdoc
     */
    public function rules()
    {
        return [
            [['username','email'], 'trim'],
            [['username','email','password'], 'required'],
            ['username', 'unique', 'targetClass' => '\frontend\models\User', 'message' => '用户名已存在.'],
            ['username', 'string', 'min' => 5, 'max' => 255],

            ['email', 'email'],
            ['email', 'string', 'max' => 255],
            ['email', 'unique', 'targetClass' => '\frontend\models\User', 'message' => '邮箱已被注册.'],

            ['password', 'string', 'min' => 6, 'max' => 30],
            ['verifyCode', 'required','message'=>'验证码不能为空'],
            ['verifyCode', 'captcha','message'=>'验证码错误'],
        ];
    }
阅读全文...
2017-03-05 / Yii2
控制器内成员变量
public $layout = false; //不使用布局
public $layout = "main"; //设置使用的布局文件
控制器成员方法
$this->layout = false; //不使用布局
$this->layout = "main"; //设置使用的布局文件
阅读全文...
2017-03-03 / Javascript
Code Snippet是CKEditor4.4.1的新插件,主要提供添加代码片段高亮显示的功能。
另外注意一点的是,Code Snippet只是作为CKEditor的插件,真正实现代码高亮的是highlight.js这个代码高亮JS库。
Code Snippet只是将highlight.js作为默认的高亮库,由于highlight.js已经集成在Code Snippet中,所以我们在使用CKEditor时候是不需要另外再引用highlight.js这个库。

安装方法:
下载Code Sn阅读全文...
2017-02-28 / Yii2
ajax异步post提交出现400 bad request错误,
在确保配置无误且url地址正确的情况下,因为yii2的crsf验证不通过引起,
解决办法有2个,

1.关闭Csrf
这个方法不推荐,能开着尽量不要关
public function init(){
    $this->enableCsrfValidation = false;
}

2.在AJAX的data参数中加入_csrf字段阅读全文...
2017-02-24 / 其它
我的笔记本是华硕k40id, 在13年大概装了itunes,后来删除了,最近要使用,结果死活装不上itunes,不管怎么整,都是提示不能删除旧版本的apple software update, 在网上找了N种方法,这些方法全试了,没一个可行的 1.windows intsall clean,首次打开确实有apple software update,立马删除,重启电脑不行 2.查注册表把苹果的所有项全清理了,不只是apple software update,依然不行 3.还有的说下载一个新的apple software update,找了好久找到了下载地址,直接安装不行,跟安装itunes一样提示错误,有的说在控制面板对apple software update,右键修复选择下载的新的版本,然后再删除,控制面板根本没这一项 4.后来看到一个说,将itunes右键以压缩包方式打开,然后将apple software update删除,我不知道他用的什么系统,我的win7,根本没有以压缩包方式打开,
4.最终于效果如图
阅读全文...
2017-02-22 / Yii2

Modal弹窗是一款bootstrap的js插件,使用方便,显示效果好。

使用效果图
效果还是很漂亮的,


使用方法:
1、在view层需要点击出现弹窗的位置创建一个按钮,用于调modal的显示,当然需要在;视图层引入类:
 

阅读全文...
2017-02-20 / Yii2
yii2自带分页, 用起来很简单, 主要就是几个参数的设置

1.控制器部分
//totalCount为数据总数, pageSize为每页显示数, 'pageSizeParam'=>false可将分页路径中per-page参数隐藏去掉
use yii\data\Pagination;
$data= $News::find();
$pages = new Pagination(['totalCount' =>$data->count(), 'pageSize' => 10,'pageSizeParam'=>false]); //分页
$data = $_data->offset($pages->offset)->orderBy('itemid DESC')->limit($pages->limit)->all();
阅读全文...
2017-02-20 / Yii2
跳转到某页
功能基于linkpager扩展,具体实现为重构系统yiiwidgetsLinkPager类,使用起来跟原来一样,只多一个go的参数,
效果图如下

在common\components目录新建GoLinkPager类文件,代码如下,方法代码来源于yii\widgets\LinkPager, 注阅读全文...
2017-02-19 / Yii2
php的排序真的那么重要吗? 我整了好几年代码,这4种算法就使用过一次,冒泡排序,因为需求比较特殊,说实话4种算法我真是没用过也不会,有时候你不能不会,虽然你用不到,
我感觉数据库设计好,数据处理好,就完全可以直接来用,一般情况下不必要再排序一次,

 

分别用冒泡排序法,快速排序法,选择排序法,插入排序法将下面数组中的值按照从小到大的顺序进行排序。 

$arr(1,43,54,62,21,66,32,78,36,76,39);

1. 冒泡排序

阅读全文...
2017-02-17 / 其它

问题:点击A连接, <a href="xx.action">删除</a>后, 点击一次,后台会被执行了2次

原因:是迅雷的组件的组件Thunder Extension 4.6导致的,迅雷会远程或者本地判断一次连接地址是否为下载连接

解决:改成<a href="#" onclick="location.href='xx.action'">删除</a>,或者禁用迅雷组件

阅读全文...