Yii2不允许加载本地资源(图片)

时间:2016-01-08 20:54:01

标签: javascript yii2

我在控制台

下的inspect元素中出现此错误

不允许加载本地资源:file:/// C:/xampp/htdocs/Yii2System/backend/web/data/cust_images/user_1.jpg

视图文件中的

 <div class="col-md-12 text-center">
            <?= Html::img($info->getUserPhoto($info->user_photo), ['alt'=>'No Image', 'class'=>'img-circle']); ?>
 </div>
控制器中的

public function actionUserPhoto($uid)
{
    $model = $this->findModel($uid);
    $info = UserInfo::findOne($model->user_info_id);
    $info->scenario = 'photo-upload';
    $old_photo = $info->user_photo;

    if($info->load(Yii::$app->request->post()))
    {
        $info->attributes = $_POST['UserInfo'];
        $info->user_photo = UploadedFile::getInstance($info,'user_photo');

        if($info->validate('user_photo') && !empty($info->user_photo))
        {
            $ext= substr(strrchr($info->user_photo,'.'),1);
            $photo = $old_photo;
            $dir1 = Yii::getAlias('@backend').'/web/data/user_images/';

            if(file_exists($dir1.$photo) && $photo!='no-photo' && $photo!= NULL) {
                unlink($dir1.$photo);
            }
            if($ext!=null) {
                $newfname = $info->user_name.'_'.$info->user_id.'.'.$ext;
                $returnResults = $info->user_photo->saveAs(Yii::getAlias('@backend').'/web/data/user_images/'.$info->user_photo = $newfname);
                if($returnResults) {
                    $info->save(false);
                }
            }
        }
        return $this->redirect(['view', 'id' => $model->user_id]);
    }
    return $this->renderAjax('photo_form', ['model' => $model, 'info' => $info, ]);
}

谁能帮我解决这个问题...

1 个答案:

答案 0 :(得分:0)

浏览器不会从本地文件系统加载图像。您需要将其托管并从Web服务器加载它。

您可以尝试使用此路径解决此问题

    file://C:/xampp/htdocs/Yii2System/backend/web/data

否则..将图像放在外部(免费)可访问Internet的服务器上