谁一开始就是大神?

PHP 第77页

PHP

关于csrf的问题[2.0]

Bravesea阅读(99)

在YII2 里面,不论是 get 还是 post,都对进行csrf验证,现在,我遇到的问题是,从接口返回的数据不携带上传过去的csrf验证,这种情况下,如何设置csrf的验证,关闭或者是怎么办?

可以在控制器里加一行:
从接口返回的数据,是指第三方异步调用你提供的restFulapi回调服务么?我这边也做过类似这种,场景是微信公众号的回调接口,当用户给公众号发消息的时候,微信服务器会自动往我提供的回调接口推送消息。我是直接针对这个action关闭掉csrf验证。具体就是设置controller::enableCsrfValidation 为false,这样,某个controller访问时,就不会做csrf验证了。
关闭单个action的csrf验证就行了。
在action中添加
原来的贴的方法不是2.0的。
如果要所有的都关闭,可以配置全局(不建议)
可以那个控制器需要配置哪一个!
楼上的 public $enableCsrfValidation = false; 就可以!
在方法里添加$this->enableCsrfValidation = false;
123456

Yii中JavaScript的疑问?

ACGlove阅读(91)

<!--购物车模板 开始-->
<script type='text/html' id='cartTemplete'>
<dl class="cartlist">
    <%for(var item in goodsData){%>
    <%var data = goodsData[item]%>
    <dd id="site_cart_dd_<%=item%>">
        <div class="pic f_l"><img width="55" height="55" src="{webroot:<%=data['img']%>}"></div>
        <h3 class="title f_l"><a href="{url:/site/products/id/<%=data['goods_id']%>}"><%=data['name']%></a></h3>
        <div class="price f_r t_r">
            <b class="block"><%=data['sell_price']%> x <%=data['count']%></b>
            <input class="del" type="button" value="删除" onclick="removeCart('{url:/simple/removeCart}','<%=data['id']%>','<%=data['type']%>');$('#site_cart_dd_<%=item%>').hide('slow');" />
        </div>
    </dd>
    <%}%>

    <dd class="static"><span><b name="mycart_count"><%=goodsCount%></b>件商品</span>金额总计:<b name="mycart_sum"><%=goodsSum%></b></dd>

    <%if(goodsData){%>
    <dd class="static">
        {if:ISafe::get('user_id')}
        <a class="f_l" href="javascript:void(0)" onclick="deposit_ajax('{url:/simple/deposit_cart_set}');">寄存购物车>></a>
        {/if}
        <label class="btn_orange"><input type="button" value="去购物车结算" onclick="window.location.href='https://www.yiichina.com/question/{url:/simple/cart}';" /></label>
    </dd>
    <%}%>
</dl>
</script>
<!--购物车模板 结束-->

请问里面的script下面可以加“dl”标签吗?

还有就是<%for(var item in goodsData){%>是什么意思?

问题呢??
for语句应该是循环输出购物车里的商品信息。

HowtouseobjectoftypeClassNameasarray[2.0]

Hazellove阅读(94)

想請教

class model {
    public $que ;
}

$model = new model();
$model['que'] = 'xxx';               // not working 型別不對
$model->que = 'abc';

但是 yii 的 $model = new $model();
$model['que'] = 'xxx';               // 卻可以 到底怎麼做到的!!

有人可以幫我解惑嗎~~ yii 他是怎麼處理的

The tricker is ArrayAccess.
You can try the following:

请教大家php中的常量义与获取等问题[2.0]

JasonLion阅读(96)

大家好,请问各位都是如何解决下面这个需求的。

比如 有model类user。其中定义常量

const ADMIN = 0; //管理
const USER = 1; //用户
const CLIENT = 2; //客户

实际数据库存储的时候 肯定是 0、1、2的值了。

但是在页面上显示的时候,需要的是 管理、用户、客户

请问各位是如何快速、优雅的 获取这些汉字内容的呢?

if(1) echo 用户
if(2) echo 客户
……
在user model里写个专门的方法
然后,在common/config/params.php里增加constants项:
在Model类(User)里可以增加一个配置索引项与constants中的内容关联:
这样,在业务代码中要获取id对应的字面就可以这样:

kindeditor怎么设置默认值呢[2.0]

HaHtom阅读(94)

<?php echo $form->field($model,'content')->widget('pjkui\kindeditor\KindEditor',['clientOptions' => ['width'=>'90%']);?>

已经调出kindeditor,默认值该怎么写呢

设置$model->content='这里设置默认值就可以吧?'
或则你直接在规则里面写也可以的
能给出代码吗?

hasMany与hasOne前台怎样调用[2.0]

GraceStag阅读(95)

如题

我有两个表,一个order,一个customer,
customer:

public function getOrders()
{
return $this->hasMany(Order::className(), ['customer_id'=>'id']);
}

order:

public funciton getCustomer()
{
return $this->hasOne(Customer::className(), ['id'=>'customer_id']);
}

我想生成的数据应该是数组形式,那我在前台用:

<?php echo $orders['id']; ?>

应该可以啊,但为什么老是提示:“Undefined index: id”

你應該先var_dump models 看看內容是甚麼!!
hasMany : 一對多 => 一個客戶可以有很多訂單
hasOne : 一對一 => 一個訂單只能有一個客戶
把兩張 table join 起來:
首先:需要用<?php echo $orders->id; ?>取值。因为取出的是类,不是数组。类属性获取用->
其次,获取数组形式的方式有两种,一种是在查询的时候,例如customer::find()->where($where)->with('order')->asArray()->all();返回的是数组形式,一种是获取了之后再转成数组,例如$customer = customer::findOne($where);$order = $customer->order;$orderArr = $order->toArray();
$orderArr = $order->toArray(); 最后这个toArray() 提示不识别呀

Yii2做站点的过程是怎样的?[2.0]

Ellietom阅读(87)

想规范下用Yii2做站点的流程。请各位赐教。
就以普通的站点为例,有前台有后台。前台主要展示信息,后台主要管理。需要先干什么再做什么,这个流程想规范下。

首页下载yii2
然后编写代码
最下发布网站
先确定业务逻辑,一般先做后台再做前台。这样开发比较快
我觉得最好的方法就是下载一个小型的项目源码,然后从入口文件按流程看着走,一遍下来,我觉得应该 不离十了,就差实践了!

在实例化一个类时,并传入一个数组,请问键名和键值分别表示什么?或则分别有什么含义?[2.0]

momoKeo阅读(86)

$model = new User(['scenario' => 'login']);

这句话中,scenario代表什么?login代表什么?新手求解答!!谢谢!!

scenario:场景
login:自定义的场景名称。
[‘scenario’ => ‘login’]:意思就是实例化的时候,把场景设置成login。
用途:根据场景,进行不同的操作,比如在login场景下rules规则做什么验证,是否能插入,更新,删除等。
再具体例子:比如我们定义login为登录场景,那么我们可以设置这个user实例化后,只是做登录验证,rules验证用户名密码匹配,只做查询,不能更新和删除。再定义signup为注册场景,那么rules验证用户名是否可用,密码是否符合等,然后做插入操作。这些都可以根据场景区分。

登录

找回密码

注册