最近在调试RESTful API示例时,出现以下错误: { "name": "Exception", "message": "Class yii/web/JsonParser does not exist", "code": -1, "type": "ReflectionException", "file": "/Users/Deskto…
解决Yii2中刷新网页时验证码不刷新的问题 [ 2.0 版本 ] ljfrocky  2015-05-30 19:39:00  1304次浏览 5条评论 10110 在Yii2框架中,如果在表单中使用了验证码,会发现一个奇怪的小问题,就是刷新网页时验证码图片不会跟着刷新. 网上的解决方法 网上的大多数解决方法都是通过修改vendor/yiisoft/yii2/captcha/CaptchaAction.php中的代码来解决,以下两种方法可以任选其一: 1.修改getVerifyCode()方法的…
在Yii2中如果设置了 'response' => [  'format' => yii\web\Response::FORMAT_JSON,  'charset' => 'UTF-8',  // ... ], 代表了,控制器输出的全部都是json格式数据,即json字符串: 而如果使用Json::htmlEncode($price): 先引入use yii\helpers\Json; 可以在当前的action中生成json字符串,response对象把这个当普通文本输出…
安装好YII2 后出现 例如以下图错误提示: watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvenF0c3g=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="" /> 解决方法例如以下: 打开安装好的YII2项目文件夹(YII2安装方法參见 摘取天上星 的博文:http://blog.csdn.net/zqtsx/…
修改vendor/yiisoft/yii2/captcha/CaptchaValidator.php这个文件就可以了,修改的地方见下图: 总结 归根到底,是因为yii2在渲染网页的时候,会先输出js验证代码,然后再显示验证码图片,也就是说,验证码必须在输出js代码前就要重新生成,而CaptchaAction.php中的run()方法是显示验证码图片的时候调用的,CaptchaValidator.php中的clientValidateAttribute()是输出js代码的时候调用的,所以接下来的道…
YII2中的yii\db\Query给我们提供了非常丰富的方法,方便我们构建复杂的SQL语句. Query()与createCommand最大区别在于,后者直接使用我们写好的SQL语句,前者通过参数和数据库类型生成不同SQL,迁移性更好. <?php namespace app\controllers; use YII; use yii\db\Query; use yii\web\Controller; class TestController extends Controller { publ…
一.首先在控制器中,将处理好的数据发送给前台: $this->layout = 'base'; 这里填写视图的模板文件(可以不写这行代码,如果不写,默认为views/layouts/main.php这个文件) return $this->render ('这里填写视图文件名称',['user'=>这里填写处理好的数据(比如说数组$list等等)]); 如果不想使用模板文件,那么这里的写法为 return $this->renderPartial('index'); 前台接受为$us…
yii\web\User 是一个统称,为用户,没有具体实例,只能管理: 此处以app\models\User为基准: app\models\User 是映射数据表user的model类,同时也实现接口,yii\web\IdentityInterface,为什么要实现这个接口呢, 是因为在yii\web\User 中的login方法:public function login(IdentityInterface $identity, $duration = 0) 中的$identity 要求的类型…
在js中创建的cookie,默认用yii2中自带的方法Yii::$app->request->cookies->get('abc')获取不到,而用$_COOKIE['abc']又是能获取到,则是以下原因照成的. 查看E:\myYiiDemo\vendor\yiisoft\yii2\web\Request.php中的1218行不难看出,使用yii2中的方法获取cookie的时候,会读取cookieValidationKey中的字串来解密(存cookie的时候也会用它来加密).由于js并没有…
] 解决myeclipse中新建javaweb工程,无法使用Web App Libraries问题 标签: myeclipsejavawebWeb App Libraries 2013-10-16 10:54 5032人阅读 评论(0) 收藏 举报  分类: 开发环境 版权声明:本文为博主原创文章,未经博主允许不得转载. 在myeclipse中新建的Javaweb工程,lib中的jar包无法自动加载工程,不能像eclipse那样使用Web App Libraries. 即使添加了Web App…
下载了Yii2.0的basic版,配置好apache之后,浏览器访问,出现如下错误: Invalid Configuration – yii\base\InvalidConfigException yii\web\Request::cookieValidationKey must be configured with a secret key. 这是因为未配置cookieValidationKey,这个配置项主要是为了防止cookie攻击的 该设置位于config下的web.php,自己随便设置…
定义在yii\web\Application 的bootstrap中, Yii::setAlias('@webroot', dirname($request->getScriptFile())); 输出的地址为:E:/WWW/basic - cp 为绝对地址 basic - cp为项目文件夹名称 Yii::setAlias('@web', $request->getBaseUrl()); 输出地址为:/basic - cp ,为相对地址…
title: 把myeclipse中的web项目导入eclipse中不能编程web项目的解决办法 tags: grammar_cjkRuby: true --- 右键单击项目,properties-->Projec Facets-->Convert to faceted form...,下拉框选择,即默认选项,checkbox选择 dynamic Web Module,java,javascript三个,确认后就可以在tomcat中添加部署该项目了 这样项目就可以部署在tomcat中了…
下载了Yii2.0的basic版,配置好nginx之后,浏览器访问,出现如下错误: Invalid Configuration – yii\base\InvalidConfigException yii\web\Request::cookieValidationKey must be configured with a secret key. 看了文档教程才发现自己犯了小白的错误,未配置cookieValidationKey. 该设置位于config下的web.php,自己随便设置一段字符串就好…
IDEA 2017.3 新版本中默认创建一个 Web 应用程序很可能不会自动创建 web.xml 文件.虽然说从 JavaEE 6.0 开始 Servlet 3.0 规范中就新增了一些注解可以免去传统 web.xml 中的设置,但是这也有局限性.比如,针对 JSF 应用程序,必须在 web.xml 中增加系统内建的 JSF Facelets Servlet 的配置以及部署后自动启动等设置,而且包括 context-param.welcome-file-list 等等并没有 Servlet 3.0…
原文地址: https://my.oschina.net/kenblog/blog/547602 方法一(推荐):针对jquery进行components配置,指定Yii2自带jquery自带资源出现位置 修改config/web.php文件,添加如下代码: 'assetManager' => [    'bundles' => [        'yii\web\JqueryAsset' => [         'jsOptions' => [            'posi…
一 CSRF 概念 CSRF(Cross-site request forgery跨站请求伪造,也被称为“One Click Attack”或者Session Riding,通常缩写为CSRF或者XSRF,是一种对网站的恶意利用.尽管听起来像跨站脚本(XSS),但它与XSS非常不同,并且攻击方式几乎相左.XSS利用站点内的信任用户,而CSRF则通过伪装来自受信任用户的请求来利用受信任的网站.与XSS攻击相比,CSRF攻击往往不大流行(因此对其进行防范的资源也相当稀少)和难以防范,所以被认为比XS…
我们用实例来说明这一部分 表结构 现在有客户表.订单表.图书表.作者表, 客户表Customer   (id  customer_name) 订单表Order      (id  order_name   customer_id   book_id) 图书表           (id  book_name    author_id) 作者表           (id  author_name) 模型定义 下面是这4个个模型的定义,只写出其中的关联 Customer  class Custom…
因为近期给朋友公司做个门户网站,把荒置了6.7年的PHP又重新拾起,发现PHP这些年兴旺多了,很多新的东西看的不明不白,研究了几个框架ZendFramework.thinkphp.Symfony.yii2,也曾经考虑直接用网上现有的开源cms,要么因为商用授权太贵,要么后台太复杂,要么覆盖行业太多导致业务复杂,看了一通代码,头晕得很,最终选择yii2自己开发个轻量的cms+shop系统,慢慢的做,应该能做出后台简单.有自己特色的网站系统来!一下是我的一些开发过程和经验,因为没有考虑太多的技术和通…
PHP最佳实践 1 PHP获取时间戳:echo  time(); 时间戳转换 date('Y-m-d H:i:s', $时间戳); 2 linux 显示命令 ls 显示所有文件夹 查看命令:tail -200 runtime/logs/app.log 退出vim   :qz  :xa 3 数据库日志: tail -f /database/mysql/query.log composer安装 compose官网 https://getcomposer.org/download/ 在PHP环境下执行…
表结构 现在有客户表.订单表.图书表.作者表, 客户表Customer   (id  customer_name) 订单表Order          (id  order_name       customer_id   book_id) 图书表                    (id  book_name       author_id) 作者表                    (id  author_name) 模型定义 下面是这4个个模型的定义,只写出其中的关联 Custom…
我们用实例来说明这一部分 表结构 现在有客户表.订单表.图书表.作者表, 客户表Customer   (id  customer_name) 订单表Order          (id  order_name       customer_id   book_id) 图书表                    (id  book_name       author_id) 作者表                    (id  author_name) 模型定义 下面是这4个个模型的定义,只写…
我们用实例来说明这一部分 表结构 现在有客户表.订单表.图书表.作者表, 客户表Customer   (id  customer_name) 订单表Order          (id  order_name       customer_id   book_id) 图书表                    (id  book_name       author_id) 作者表                    (id  author_name) 模型定义 下面是这4个个模型的定义,只写…
Yii2和CodeCeption CodeCeption是一个全栈的PHP测试框架,关于CodeCeption的介绍见:CodeCeption官方文档. Yii2官方增加了对CodeCeption的支持,这里主要讲解Yii2里如何基于CodeCeption进行单元测试和功能测试. 知识准备 Composer基础:Composer官方文档 CodeCeption基础:CodeCeption官方文档 Yii2-app-basic中的CodeCeption例子:yii2-app-basic Yii2-…
有关Yii2.0鉴权之访问控制过滤器参考这篇文章  http://www.yiiframework.com/doc-2.0/guide-security-authorization.html 这里主要说下怎么在控制器中限制访问的IP: use yii\web\Controller; use yii\filters\AccessControl; class SiteController extends Controller { public function behaviors() { retur…
表结构 现在有客户表.订单表.图书表.作者表, 客户表Customer   (id  customer_name) 订单表Order      (id  order_name  customer_id   book_id) 图书表Book       (id  book_name   author_id) 作者表Author     (id  author_name) 怎么来确定是一对多 还是一对一呢?这个很简单,比如下面的Customer,一个Customer有多个Order,所以就是一对多:…
YII2中ActiveDataProvider可以使用yii\db\Query或yii\db\ActiveQuery的对象,方便我们构造复杂的查询筛选语句. 配合强大的GridView,快速的显示我们想要的数据. 通过上面的两个工具,我们快速的显示用户表信息.用户表结构如下: 我们创建一个用户模型MyUser.php,代码如下: <?php namespace app\models; use yii\db\ActiveRecord; use yii\data\ActiveDataProvider…
有些时候系统功能过于复杂,这时我们需要通过模块把一些功能区分开来,便于管理与维护. 我用的是Yii2的基本应用程序模板,程序其实已经给我们提供了一个模块,就是app本身.YII2中是可以无限嵌套模块的.不过一般不要超过2层. 我们在app下创建一个modules的目录,并创建一个api子目录,子目录下创建Api.php文件. Api.php代码如下: <?php namespace app\modules\api; use yii\base\Module; //注意模块必须继承自yii\base…
YII2中给我们提供了非常方便的日志组件,只需要简单配置一下就可以使用. 我们在config/web.php中配置如下: return [ //log必须在bootstrap期间就被加载,便于及时调度日志消息到目标 'bootstrap' => ['log'], 'components' => [ 'log' => [ //消息跟踪级别,设置yii\log\Dispatcher::traceLevel属性 //YII_DEBUG开启时,日志消息被记录时,追加最多3个调用堆栈信息 'tra…
在使用YII2中自带的RBAC时,需要先配置config/web.php: return [ // ... 'components' => [ 'authManager' => [ 'class' => 'yii\rbac\DbManager', ], // ... ], ]; 如果你需要运行yii migrate来创建表,那么config/console.php也需要同上面一样配置一下. cmd进入项目目录,运行如下命令: yii migrate --migrationPath=@yi…