0

我正在使用 beforeSave() 重命名已上传的文件。但在保存到文件夹之前它没有被重命名。它与上传的文件同名。我使用扩展名 EAjaxUpload 上传文件。任何人都可以帮助我哪里出错了...而且我正在Windows上工作。

在模型中(附加简历):-

protected function beforeSave()
{ 
                            $path='C:\\wamp\\www\\Myapp\\Resumes\\';
                        $uid=$_POST['AttachResume']['User_id'];
                        //var_dump($this->User_id); exit();
                        $file=$_POST['AttachResume']['ResumeName'];
                        //var_dump($this->ResumeName); exit();
                        $temp = $path.$file;
                        $newname=$uid.$file;
                        if(file_exists($temp)==true)
                        {
                          rename($temp, $path.$newname);

                        }
                 return parent::beforeSave();

  }  
Controller:-
 public function actionIndex()
{
    $model=new AttachResume;  
    if(isset($_POST['AttachResume']))
        {

         $model->User_id=$_POST['AttachResume']['User_id'];
     $model->ResumeName=$_POST['AttachResume']['ResumeName'];
     $model->save();

        }
       $this->render('index',array('model'=>$model));
    }

Myapp 是应用程序。Resume 是它下面的文件夹,我必须在其中保存文档,谢谢

4

1 回答 1

0

使用这个扩展: http : //www.yiiframework.com/extension/eajaxupload/ 那是最好的扩展

要重命名正在上传的文件,请在下面添加以下行: rename($folder.$result['filename'],$folder."newfilename");

感谢 Ben:在此链接上找到的解决方案: How to use xupload with Yii

于 2013-05-15T11:34:08.880 回答