小编aja*_*ybc的帖子

使用CUploadedFile上传文件的正确方法是什么

我正在按照教程http://www.yiiframework.com/wiki/2/how-to-upload-a-file-using-a-model/上传文件.我写了以下代码:

$menuitem->attributes = $_POST['MenuItems'];
$menuitem->clientId = Yii::app()->user->clientId;
$menuitem->image = CUploadedFile::getInstance($menuitem, 'image');
if($menuitem->save()){
   $menuitem->image->saveAs(
       Yii::app()->getBasePath()."/../../".$menuitem->image->getName()
   );
}
Run Code Online (Sandbox Code Playgroud)

但问题是,如果同一目录中存在同名文件,则文件既不会被覆盖也不会以不同的名称保存.我想要的是新图像说image.jpg,如果存在同名文件,则重命名为:image_1.jpg

可能吗 ?请回复.

php yii

6
推荐指数
1
解决办法
1万
查看次数

如何在sails.js中的SocketIO握手期间修复"此套接字无可用的有效会话"?

我正在使用sails.js为iOS应用程序开发API,并使用websockets进行实时通信.问题是我无法让套接字握手工作.

控制台中显示"此套接字没有可用的有效会话"错误.当我用谷歌搜索了一下后,我才知道我需要设置一个有效的cookie.由于我的客户端不是基于浏览器的Javascript,我无法设置任何cookie.

我甚至设置authorization: falseconfig/sockets.js

这有什么解决方案吗?或者选择Sails JS来完成这项任务是个错误?

顺便说一句,这些是我遇到这个问题的一些链接:

https://github.com/balderdashy/sails/issues/1062 https://github.com/balderdashy/sails/issues/995 https://github.com/balderdashy/sails/issues/1003

sockets node.js express socket.io sails.js

6
推荐指数
1
解决办法
439
查看次数

如何使用OAUTH 2对受信任的应用程序进行身份验证

我正在为我正在开发的网站开发OAUTH 2 REST API.我们有一个使用此API的官方原生移动应用程序,并计划向第三方开发人员开放API.我们的原生移动应用程序将拥有比第三方应用程序更多的权限.我是通过根据客户端ID或应用程序ID设置权限来实现的.我password grant type用于官方应用程序和implicit grant type第三方应用程序.

但问题在于,由于我们client_secret在任何一种情况下都没有使用,第三方可能通过某种方式窃取我们的官员client_id并使用它来访问官方应用程序独有的API中的提升权限来获得提升的权限.

反正有没有阻止他们这样做?官方Facebook或Twitter应用程序如何做到这一点?

php authentication api oauth oauth-2.0

5
推荐指数
1
解决办法
628
查看次数

如何自定义JQPlot周围的黑色边框

如何在JQPlot中自定义图形周围的黑色边框?我广泛搜索CSS文件,找不到任何东西.

[UPDATE]

如果你不明白我的意思,请看这个图像:http: //img339.imageshack.us/img339/5796/jqplot.png

谢谢

jquery jquery-plugins jqplot

4
推荐指数
1
解决办法
4917
查看次数

Yii用户身份验证和会话无法正常工作

我正在Yii建立一个网站,我被困在用户身份验证步骤.无论我做什么,我都无法验证用户身份或在会话中存储一些价值.

我的UserIdentity组件如下:

class UserIdentity extends CUserIdentity
{
    private $_id;

    public function authenticate(){
        if(($userRecord = Admin::model()->findByAttributes(array('username'=>$this->username)))===null){
            return $this->errorCode=self::ERROR_USERNAME_INVALID;
        }
        if($userRecord->password!=hash('sha256', $this->password)){
            return $this->errorCode=self::ERROR_PASSWORD_INVALID;
        }
        $this->_id=$userRecord->id;
        $this->setState('title', $userRecord->username);
        Yii::app()->session['clientId'] = $userRecord->clientId;
        Yii::app()->session['id'] = $userRecord->id;
        Yii::app()->session['loggedin'] = true;

        return $this->errorCode=self::ERROR_NONE;
    }

    public function getId(){
        return $this->_id;
    }

}
Run Code Online (Sandbox Code Playgroud)

Yii:app()->user->isGuest总是返回true并且Yii::app()->user->id什么都不返回.

这就是我尝试使用Yii::app()->session['loggedin']身份验证的原因.但即使这样也行不通.当我像这样访问会话数组时,Yii::app()->session我得到了错误Property "CWebUser.session" is not defined..

这真的令人沮丧.我是Yii的新手.请帮忙.

php yii yii-components

2
推荐指数
1
解决办法
7493
查看次数

使用findAll时,Yii AR加入不起作用

我有两个表menuslang_menus.我的Menus模型如下:

public function relations()
{
    // NOTE: you may need to adjust the relation name and the related
    // class name for the relations automatically generated below.
    return array(
                'menulanguages'=>array(self::HAS_MANY, 'MenuLangs', 'menuId'),
    );
}
...
public function getMenus(){
        $criteria = new CDbCriteria();
        $criteria->condition = "t.clientId = ".Yii::app()->user->clientId." AND menulanguages.languageId = ".Yii::app()->user->userlanguage;


        $count = Menus::model()->with('menulanguages')->count($criteria);

        $pages=new CPagination($count);
        //Results per page
        $pages->pageSize=10;
        $pages->applyLimit($criteria);

        $menus = Menus::model()->with('menulanguages')->findAll($criteria);
        return array('menus' => $menus, 'paging' => $pages);
    }
Run Code Online (Sandbox Code Playgroud)

这是抛出错误Unknown …

php yii

2
推荐指数
1
解决办法
5240
查看次数

无法在Solr 4.4中加载KeywordRepeatFilter

我正在使用Apache Solr的4.4版本.如Solr文档中所述

<fieldType name="text_keyword" class="solr.TextField" positionIncrementGap="100">
 <analyzer>
   <tokenizer class="solr.WhitespaceTokenizerFactory"/>
   <filter class="solr.KeywordRepeatFilter"/>
   <filter class="solr.PorterStemFilterFactory"/>
   <filter class="solr.RemoveDuplicatesTokenFilterFactory"/>
 </analyzer>
</fieldType>
Run Code Online (Sandbox Code Playgroud)

我正在使用上面的代码.但是,由于我收到错误,"KeywordRepeatFilter"似乎存在一些问题

org.apache.solr.common.SolrException:[schema.xml] fieldType"text_keyword"的插件初始化失败:[schema.xml] analyzer/filter的插件初始化失败:在org.apache中加载类'solr.KeywordRepeatFilter'时出错. solr.util.plugin.AbstractPluginLoader.load(AbstractPluginLoader.java:177)位于org.apache.solr.schema.IndexSchema的org.apache.solr.schema.IndexSchema.readSchema(IndexSchema.java:467).(IndexSchema.java :164)at org.apache.solr.schema.IndexSchemaFactory.create(IndexSchemaFactory.java:55)

但是当我删除solr.KeywordRepeatFilter行时,一切似乎都运行正常.任何人都可以告诉我有什么问题.是否从Solr 4.4中删除了"solr.KeywordRepeatFilter"?

solr solr4

2
推荐指数
1
解决办法
447
查看次数

为什么我需要使用Kohana Form辅助函数?

我正在使用Kohana 3.2进行我正在进行的项目.我是这个框架的新手.在搜索文档以进行验证时,我找到了以下页面:

http://kohanaframework.org/3.1/guide/kohana/security/validation

在该页面中,他们使用内置的辅助函数来生成表单.我遵循了那个教程,但我很惊讶地看到,即使在使用表单助手函数之后,我不得不循环遍历errors数组并逐个显示错误.这与Yii非常不同,Yii会自动在表单字段旁边显示错误消息,并且还会智能地应用基本的javascript验证.

因此,我的问题是在Kohana框架中使用表单助手函数有什么意义?还是我错过了一些其他目的?

php kohana kohana-3

0
推荐指数
1
解决办法
465
查看次数

Yii没有使用CController :: redirect()函数正确重定向

在我正在创建的yii网站中,我有一个带有网址的页面,该网页以http://localhost/administrator/restaurant/list 表格格式显示餐馆列表以及删除按钮.删除按钮指向http://localhost/administrator/restaurant/delete/<id>.

actionDelete我的控制器如下:

public function actionDelete(){
        $model = Restaurants::model()->findByAttributes(
                                        array(
                                            'id'=>$_GET['id'],
                                            'clientId'=>Yii::app()->user->clientId
                                        ));
        $model->delete();
        Yii::app()->user->setFlash('success',Yii::t('error','Restaurant has been deleted successfully'));
        $this->redirect('restaurant/list',true);
    }
Run Code Online (Sandbox Code Playgroud)

但是在单击"删除"按钮时,该行将从数据库中成功删除,但不是重定向到http://localhost/administrator/restaurant/list页面,而是重定向到http://localhost/administrator/restaurant/delete/restaurant/list并显示错误.我实现重定向功能的方式有问题吗?

php yii

0
推荐指数
1
解决办法
2108
查看次数