2017-05-06 / Yii2
第三方登陆新浪微博的实现方法跟QQ互联登陆基本是一样的,一个client/weibo.php类,加上main.php一些配置参数,控制器等,百度有很多
当一切都配置整好之后,点击微博登陆,出现错误error:redirect_uri_mismatch,您所访问的站点在新浪微博的认证失败阅读全文...
2017-05-03 / php+Mysql
CSRF是什么?
CSRF(跨站请求伪造),通过盗用你的身份,发送一些恶意请求,比如更改用户密码、删除账户、发送邮件、以你的身份购买商品等。阅读全文...
2017-04-22 / Yii2
yii2的验证码使用方法这里就不再发了, 网上有很多教程, 本站内搜索"验证码"也可以很快找到,
yii2自带的验证码是白背景蓝文字, 在各种个性的网站有时候显得非常不搭调, 想个性一点,
想要达到的目的是,点击验证码刷新时,背景颜色和文字颜色随机变化,可以自定义颜色阅读全文...
2017-04-22 / CSS+DIV
在苹果的iphone和ipad设备上, form表单的submit按纽会被显示成圆角, 就像是加了border-radius:20px一样,
但在电脑上就没问题, 显示如下:

百度查了查终于查到了原因, iPhone上的safari解析input[type="submit"]和input[type="reset"]按钮会以苹果浏览器的默认UI渲 染,这样就出现我刚才那种现像,我们在样式中明确的设置了button的圆角值,但到iPhone的safari上就不生效了。阅读全文...
2017-04-14 / php+Mysql
call_user_func(), 即把第一个参数作为回调函数调用.
函数说明:

mixed call_user_func ( callable $callback [, mixed $parameter [, mixed $... ]] )

第一个参数 callback 是被调用的回调函数,其余参数是回调函数的参数。阅读全文...
2017-04-11 / php+Mysql
Composer 是 PHP5.3以上 的一个依赖管理工具。它允许你申明项目所依赖的代码库,它会在你的项目中为你安装他们。
Composer 不是一个包管理器。是的,它涉及 "packages" 和 "libraries",但它在每个项目的基础上进行管理,在你项目的某个目录中(例如 vendor)进行安装。默认情况下它不会在全局安装任何东西。因此,这仅仅是一个依赖管理。
windows系统composer的安装方式有两种阅读全文...
2017-04-07 / Yii2
yii2中使用left join时,用query的方法看着更舒服,改起来也方便,如下,其中表别名字段别名等设置起来方便简单
$query = (new yiidbQuery())
        ->select('a.id as id,title,create_time,modify_time,username,name')
        ->from('article AS a')
        ->leftJoin('user AS u','u.id = a.user_id')
        ->leftJoin('category AS c','c.id = a.category_id')
        ->where(['c.id'=>5])
        ->limit(4)
        ->orderBy('id DESC')
        ->All();
阅读全文...
2017-04-06 / Yii2
当用户在内容页点击导航登陆连接时, 跳转到登陆页面, 当登陆成功后, yii2默认代码是返回到首页,即$this->goHome();
这样对体验不好, 用户还要再去找原来的内容, 当然如果登陆做成弹窗的形式可以解决问题,但登陆页我感觉还是适当的用比较好,还可以做宣传图在上面,
yii2有个$this->goBack()的方法, 但这里不适用 , 因为登陆页登陆后会post提交, 然后再返回, 返回的时候使用 $this->goBack() 被返回的页面是post提交前的页面,即登陆页
我的解决办法是用referrer,将referrer保存到登陆表单,然后再用路由判断不跳回到登陆页阅读全文...
2017-03-23 / Yii2
在Yii2开发时可以配置不同的环境, 配置要随着应用运行的不同环境更改。例如在开发环境中,你可能使用名为 db_dev 的数据库,而生产环境则使用 db_prod 数据库。为便于切换使用环境,Yii 提供了一个定义在入口脚本中的 YII_ENV 常量。如下:

defined('YII_ENV') or define('YII_ENV', 'dev');

YII_ENV 可以定义成以下三种值:

prod:生产环境。常量 YII_ENV_PROD 为 true。这是 YII_ENV 的默认值。
dev:开发环境。常量 YII_ENV_DEV  为 true。
test:测试环境。常量 YII_ENV_TEST  为 true。

阅读全文...
2017-03-22 / Javascript
一般开发时都不使用IE浏览器,特别是IE9 IE8这些, 不只速度慢,兼容问题也是一堆一堆的,没办法还是有一些人在使用这些浏览器,只能想办法尽量魂, 我本人用的是火狐浏览器,都弄好后我发现一个很严重的问题,除了ie9以下的浏览器都不能支持html5的新标签(article,aside,dialog,footer,header,section,footer,nav,figure,menu)
后来在网上找到一个js文件custom.modernizr.js,使用之后发现确实可以解决新标签的问题,但此文件就有9.2KB,仅仅几个标签,后来无意间发现HTML5shiv,实在是太小巧了,2KB,解决新标签支持问题,
使用方法如下阅读全文...