谁一开始就是大神?

PHP 第84页

PHP

Yii2中如何让图片不显示图片名而是显示图片[2.0]

littlehappy阅读(69)

数据库里存的图片字段为:pic 格式是:C:\xampp\htdocs\weidu\v1.weidu.com/files/case02.jpg
index.php页面:
如何让图片显示,不是显示图片名,而是显示图片

你这个路径应该只有上传图片的那台设备上能看到..
看你在你的 folder 存甚麼路徑
從 web 下 的 /files/case02.jpg
好问题,没有标注功能,特来标记一下。
以下情况为数据库pic字段存的是图片文件名
经测试,可以使用
另外,DetailView内匿名函数不可用

关于模板的缩写[2.0]

Kindpony阅读(75)

<?= Html::encode($message) ?>
这种写法比较古老,是一种缩写形式。
我看了下 我的php.ini 配置 short_open_tag = off
但是 竟然在YII 下 正常运行
感觉好奇怪,

你们不感觉奇怪么
求大姐 大哥 解释下。

官網寫的~~PHP5.4之後 都是可執行的
http://php.net/manual/en/ini.core.php

帮忙改一下,路径老是出错[2.0]

CGfrog阅读(74)

modules\article\views\admin\action.php代码

<script>
    function checked($id){
        var vals = $("#name").val();
        var id=$id;
        $.ajax({
            type:'post',
            url:"<?= yii\helpers\Url::to(['admin/up']) ?>",路径老是出错
            data:{name:vals,id:id},

            success:function(msg){
                alert(msg);
                //$("#name").val(vals);
            }
        });
    }
</script>

  <?= app\widgets\GridView::widget([
    'dataProvider' => $dataProvider,
    'filterModel' => $searchModel,
    'columns' => [
       ['class' => 'yii\grid\CheckboxColumn'],
       'title',
        [
            'attribute' => 'cate',
            'format' => 'raw',
            'value' => function($model){
                return Html::dropDownList("cates[{$model->id}]",$model->cate,\common\models\Article::$cates,['id'=>'name','onchange' =>"checked($model->id)"]) ;
            }
        ],
      [
            'class' => 'app\widgets\ActionColumn',
            'template' => '{update} {view} {delete}',
       ],
    ]

])?>

modules\article\controllers\AdminController.php代码,我建了一个up方法,想通过它来修改ajax传过来的值

   public function actionUp(){
        
    }

请各位大神帮忙解决一下,哪里有问题,控制文件里帮忙完善起来。

你说的路径出错是报的是 404还是400。如果是400,提交的数据无法被验证的话,那无关路径,可能是yii本身开启了 csrf,只需关闭 csrf认证,或在ajax那里提交csrf 就可以了。
关闭方法,在你的 AdminController.php 里加入
你可以参考这个:http://www.yiichina.com/tutorial/449
<?= Url::to([‘admin/up’]) ?>
use yii\helpers\Url; 命名空间加到顶部
代码复制出来看下
这是异步调用 返回的是json 打印不出来的
admin/up&name=1&id=2 这个url访问看下
你访问的url复制出来看下
var_dump(‘11111111111111111111111111111111111111111111111111’); 改成 echo 1;die;

为啥从github上clone下来的包里没有vendor文件夹?[2.0]

richnice阅读(70)

从yiisoft/yii2-app-advanced上clone下来文件运行失败,然后发现比yiichina提供的压缩包少了个vendor文件夹,复制过去后问题解决。
请问vendor文件夹是什么用的?为啥官方下载的反而没有提供?

突然翻到自己以前问的老问题,看到下面两个回答都说得很含糊,自己回复一下正解:vendor是composer下载的依赖库文件,yii2-app-advanced这个项目代码里,只有其自己的项目文件,而其依赖的yii框架等类库,都记录在composer.json里面,只要安装好composer,然后install或update一下就是可以了。

vendor,如其名字,是第三方提供的工具。
你下载的只是yii自身的代码。
需要配合必要的第三方工具才能正常运行。
具体安装方法,请参考你下载文档页面中的说明,或者查看本站文档中的安装一节。

地的做好的yii项目,为什么传到服务器打不开[1.1]

Jimdear阅读(69)

上传到服务器,打开域名提示

Warning: require_once(D:\wwwroot\91zhai\wwwroot/../yii1/framework/yii.php) [function.require-once]: failed to open stream: No such file or directory in D:\wwwroot\91zhai\wwwroot\index.php on line 14

Fatal error: require_once() [function.require]: Failed opening required 'D:\wwwroot\91zhai\wwwroot/../yii1/framework/yii.php' (include_path='.;C:\php5\pear') in D:\wwwroot\91zhai\wwwroot\index.php on line 14

导入的两个文件在服务器路径和你本地路径不同。
你在本地和服务器上路径不一样吧。

Yii::$app->controller->id报错,请大侠点[2.0]

acgapple阅读(79)

$controllerID = Yii::$app->controller->id;
$actionID = Yii::$app->controller->action->id;

报错

PHP Notice – yii\base\ErrorException
Trying to get property of non-object

首先, 这两行代码没什么问题.
你肯定是用错了地方,
module里面 实例化controller[createController] 之后, 才将controller绑定到Yii::$app
而绑定action到当前controller的节点 则在 controller runAction之后
因此 , 你在module没有执行 runAction 之前, Yii::$app->controllernull
所以 moduleinit 事件之前(包括init事件内), Yii::$app->controller 都是 null
controllerbeforeAction 事件之前(包括beforeACtion事件内), Yii::$app->controller->action 也是没值的;;;
调用的位置不对吧。
当前位置,没有那个对象.
在控制器和视图里都可以用的,在控制器里也可以直接用$this->controller->id获取~

自动登录没有用啊![2.0]

Jimapple阅读(73)

不是就这样就可以了吗?Yii::$app->user->login($user, $this->rememberMe ? 3600 * 24 * 10 : 0)
我勾选记住登录,名字是_identity的cookie是有的,这是自动登陆的凭证吧?
我的怎么没用,还要做其他什么操作吗?
我用的就是Yii自带的那套。

user的配置:

'user' => [
    'identityClass' => 'common\models\User',
    'enableAutoLogin' => true,
    'loginUrl' => ['user/login', 'ref' => 1],
    'authTimeout' => 1800,
],

User实现的IdentityInterface接口代码如下:

/**
 * 通过user id查找身份
 * 
 * @param user_id $id        	
 * @return Ambigous <\yii\db\static, NULL>
 */
public static function findIdentity($id) 
{
	return static::findOne ( [ 
			'user_id' => $id,
			'enabled' => self::STATE_ENABLED 
	] );
}

/**
 * 用token查找身份,这个方法暂时没有用处
 * 
 * @param string $token        	
 * @param string $type        	
 */
public static function findIdentityByAccessToken($token, $type = null) 
{
	return null;
}

/**
 * 取得可用用来验证用户身份的KEY,每个用户的key需要唯一
 * 
 * @return string
 */
public function getAuthKey() 
{
	return null;
}

/**
 * 取user id
 * 
 * @return number
 */
public function getId() 
{
	return $this->user_id;
}

/**
 * 验证authKey
 * 
 * @param string $authKey        	
 * @return boolean
 */
public function validateAuthKey($authKey) 
{
	return $this->getAuthKey () === $authKey;
}

搞定:

    $cookie->value = json_encode([
        $identity->getId(),
        $identity->getAuthKey(),
        $duration,
    ], JSON_UNESCAPED_SLASHES | JSON_UNESCAPED_UNICODE);

应用配置里面,对component[‘user’]的配置代码贴一下。
如果是你们自己实现的Identity类,把实现IdentityInterface的类代码也需要贴一下。这样才好方便你诊断问题。
我的没修改过,系统默认就支持记住14天。
确认下浏览器开启了cookie
回复见下面,莫名其妙提交两遍..

怎么用不同条件修改数据[2.0]

Cindypony阅读(78)

$this->updateAll($data, $where);

$data = [‘groupid’=>1];
//如 条件为 province=1, city=2
$where = [‘province’=>1, ‘city’=>2];

还想加个id in(1,2,3) 的条件进去 请教下怎么写

$where = ['province' => 1, 'city' => 2, 'id' => [1, 2, 3]]
Yii\db\Query
下面是官網的範例:
Where 使用方法可以詳閱
http://www.yiiframework.com/doc-2.0/yii-db-query.html
如果是小于,怎么写呢,大佬

GridView中如何判断图片是否已设置,如设置了则显示该图片,如设置则显示“设置”[2.0]

Cindyseagull阅读(66)

view中代码如下:img为model中的字段

<?= GridView::widget([
    'model' => $model,
     'tableOptions'=>['class'=>'table table-striped table-hover'],
    'columns' => [
        ['class' => 'yii\grid\SerialColumn'],

        'id',
        [
            'attribute'=>'img',      
            'format' => ['image',['width'=>'30','height'=>'30',]],
        ],

        ['class' => 'yii\grid\ActionColumn'],
    ],
]); ?>

判断img属性是否为空,根据结果输出图片或提示
你好,这个$model是哪儿来的啊,我的怎么是未定义????

服务器上无法访问[2.0]

NiceLion阅读(72)

在本地一切访问正常,用git上传到服务器后会访问index.php出现空白,访问其他文件会报404的错误。

你可以看看 vendor 這檔案還在不在
通常在 .gitignore
這檔案裡面 會預設禁止上傳
或是你用了 dist 檔案夾裡的 js 也會有可能
信息量太少…
服务上初始化了没? 开下debug试试。

登录

找回密码

注册