警予,保存图像从$ _FILES,但没有使用模型(Yii , saving an image fro

2019-07-29 09:24发布

这可能吗 ? 这是一个模型

  CUploadedFile::getInstance($model,'newsimage');
  $model->image->saveAs("image\path")

但我不希望创建一个模型,这样我可以节省我的形象。

我actualy需要这个...嗯,我试图让的CKEditor的“上传图片”功能的工作,但我需要将图像保存脚本。 当我点击“上传图片”按钮,只需要调用一个动作,并从那里我有机会获得我选择,使用的图片$_FILES ,但我似乎无法将文件保存到目标目录。

是否可以将文件保存到目标路径(“C:\ myProject的\图像”的例子),而不是使用模型?

编辑:

这里是一个解决方案,我发现了一点点后,我上传的文件在$_FILES['upload']所以..

$temp = CUploadedFile::getInstanceByName("upload");  // gets me the file into this variable (  i gues this wont work for multiple files at the same time )
$temp->saveAs("D:/games/" . $temp->name);  // full name , including the filename too.

Answer 1:

假定“无模式” =“未经分贝表”

你只要把UploadForm.php从CFormModel延长您的车型目录

class UploadForm extends CFormModel
{
    public $upload_file;

    public function rules()
    {
        return array(
        array('upload_file', 'file', 'types'=>'jpg,jpeg,gif,png','maxSize'=>10*1024*1024),
        );
    }

    /**
     * Declares attribute labels.
     */
    public function attributeLabels()
    {
        return array(
            'upload_file'=>'Upload File',
        );
    }

}

在您的控制器

$model->upload_file=CUploadedFile::getInstance($model,'upload_file');
$model->upload_file->saveAs("C:\myProject\images\".$model->upload_file->name)


文章来源: Yii , saving an image from $_FILES , but without using models