草庐IT

YII_TRACE_LEVEL

全部标签

php - Yii,实现 "user change of password"的最佳方式

我在应用程序中使用Yii,我正在编写一个非常简单的用户管理,例如注册、删除和更新用户...为了更新现有用户,我需要先检查旧密码,然后再将其更改为新插入的密码。所以这是我在表单中的字段:username:----old_password:---new_password:---我的用户表如下所示:id,username,password如何在使用新密码更新旧密码之前验证旧密码?我知道通常的php编码,但我想知道是否有任何Yii技巧可以自动执行此操作...提前致谢 最佳答案 你不应该用垃圾污染你的模型。请始终牢记这些基本的MVC原则:您的

php - 数组的 Yii 验证规则

有没有办法在Yii模型的rules()方法中要求元素数组?例如:publicfunctionrules(){returnarray(array('question[0],question[1],...,question[k]','require'),);}我遇到过需要验证多个元素数组的情况来自表格,除了执行上述操作之外,我似乎找不到解决它的好方法。我在指定attributeLables()时遇到了同样的问题。如果有人有一些建议或更好的方法,我将不胜感激。 最佳答案 您可以使用type别名的CTypeValidatorpublicfu

php - Yii 在每个页面之前检查用户是否登录

我必须在呈现每个页面示例之前检查用户是否已登录:http://mypage.com/site/about在开始时检查用户是否登录,如果没有-重定向tom登录页面我不想在每个组件中都添加它,怎么办? 最佳答案 你也可以使用它来检查如果它是真的那么用户没有登录否则登录if(Yii::app()->user->isGuest){//notloggeduser}else{//loggedinuser} 关于php-Yii在每个页面之前检查用户是否登录,我们在StackOverflow上找到一个类

php - yii\base\ErrorException - 找不到类 'app\controllers\EntryForm'

我刚刚尝试了WorkingwithFormsYiiv2.0.0的“基本”版本教程。我一步一步地跟着它,但我猜有些地方不对劲。我有EntryForm模型,SiteController有actionEntry,两个View也都在那里。错误跟踪:1.in/usr/share/nginx/html/basic/controllers/SiteController.phpatline99}publicfunctionactionAbout(){return$this->render('about');}publicfunctionactionEntry(){$model=newEntryForm

php - 调整 Yii2 表单中的文本框大小

我正在学习一个教程,它使用的是Bootstrap。我不确定如何调整其中的Lan_Id、Name和Employee_Number文本框的大小。我想,我开始了解Yii框架了。这是ViewuserForm.php:session->hasFlash('success')){echoYii::$app->session->getFlash('success');}?>field($model,'Lan_Id');?>field($model,'Name');?>field($model,'Employee_Number');?>'btnbtn-success']);这是模型UserForm.p

php - Yii2 从 url 中删除 index.php

当我在Yii中设置选项以从URL中删除index.php时,我收到404错误,错误日志中出现此错误Filedoesnotexist:/var/live/var。在我的浏览器中,我收到此错误TherequestedURL/var/decat/frontend/web/index.phpwasnotfoundonthisserver.但文件恰好位于该位置。可能的解释是我的文档根目录是/var/live并且decat是conf文件中显示的别名。这个url工作正常http://13.21.16.180/decat/index.php/site/login但是当我删除index.php时出现错误

php - 在 Yii2 .htaccess 中将 http 重定向到 https

htaccess文件,它将我的高级Yii2应用程序重定向到前端index.php文件,因为已经有一个.htaccess文件。其中有以下几行..这是我现在在根目录下的.HTACCESSOptions-IndexesRewriteEngineonRewriteCond%{REQUEST_URI}!^publicRewriteRule^(.*)$frontend/web/$1[L]#DenyaccessingbelowextensionsOrderallow,denyDenyfromall#DenyaccessingdotfilesRewriteRule(^\.|/\.)-[F]现在我搜索了

php - 在 yii2 上覆盖模块的翻译路径

假设我安装了模块Foo与Composer形成一个存储库。模块结构是这样的:-Foo|-models|-controllers|-views|-messages|-configMessagesFoo的文件夹包含模块的翻译文件。现在我想覆盖Foo的一些翻译字符串.来自Yii2i18nDocumentation我尝试在翻译组件的配置中使用fileMap属性来映射bar类别为bar.php(而不是从app\modules\Foo\messages读取),但它对翻译没有任何影响。我的i18n组件配置是:'i18n'=>['translations'=>['*'=>['class'=>'yii\i

php - 在 yii2 中设置动态时区

有谁知道如何为每个用户设置动态时区?如果时区存储在数据库中,我如何从数据库中获取它并在运行时设置它,这样我就不需要每次都在我的代码中设置它? 最佳答案 这是一个示例,假设时区作为字符串存储在users表的timezone列中。将此添加到您的应用程序配置中:'onbeforeRequest'=>function(){$user=Yii::$app->user->identity;if($user&&$user->timezone){Yii::$app->setTimeZone($user->timezone);}},此代码将在请求之前

php - 如何将未覆盖文件添加到 Yii 应用程序的 PHPUnit 代码覆盖率报告中

我目前正在尝试获取基于Yiiframework的PHP应用程序的代码覆盖率报告.代码覆盖由PHPUnit3.6生成,我正在使用whitelistapproach源文件过滤。问题是,当我设置选项addUncoveredFilesFromWhitelist="true"时,代码覆盖中断并出现以下错误:Generatingcodecoveragereport,thismaytakeamoment.PHPWarning:include(CButtonColumn.php):failedtoopenstream:Nosuchfileordirectoryin/home/hijarian/syst