2011-08-10 6 views
1

ファイルをアップロードするには、以下の操作が必要です。これは私のモデルで定義したようにcurrentDateでdirを作成し、ImageIdに名前を変更してファイルをアップロードします。Yiiのダイナミックディレクトリにファイルがアップロードされない

問題は、ディレクトリとイメージが両方とも同じディレクトリ内に作成されていることです。私は、新しく作成されたディレクトリに配置されるImageが必要です。何か案は?

$model->attributes=$_POST['ImageUpload']; 
$model->image=CUploadedFile::getInstance($model,'image'); 
if($model->save()) 
{ 
    exec("mkdir -p " . Yii::app()->basePath . "/../images/uploads/$data->currentDate"); 
    $model->image->saveAs(Yii::app()->getBasePath()."/../images/uploads/$data->currentDate/$model->ImageId"); 
    $this->redirect(array('view', 'id' => $model->ImageId)); 
} 

答えて

0

$ model-> ImageIdには何かがありますか?私はほぼ同じコードを使用してい

if (!file_exists ($fileSavePath)) 
    mkdir ($fileSavePath, 0, true); 

$fileSavePath .= $form->my_file->name; 
$form->my_file->saveAs ($fileSavePath); 
+0

@Irobb、$モデル - > IMAGEIDは、フォームの実行中に移入されます。私はファイルをアップロードし、$ model-> ImageIdに名前を変更したと言っています。ディレクトリは、そのフォルダに置かれていないイメージだけで作られています。あなたのコードを組み込もうとしましたが、失敗しました。私が持っているものをあなたが持っているものに組み込む方法を見ることができますか?助けてくれてありがとう。 – enfield

+0

念のために、パスが何であるかを確認するためにエコーを行います。 エコー(のYii ::アプリ() - > getBasePath() \t \tは「/../images/uploads/$data->currentDate/ $ model-> ImageId "); –

関連する問題