2012-05-14 4 views
6

これは可能ですか? これはモデル

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

であるが、私はちょうどので、私は私の画像を保存することができるモデルを作成する必要はありません。

これは本当に必要なものです...私はCKEditorの "画像のアップロード"機能を動作させようとしていますが、画像保存用のスクリプトが必要です。 「画像をアップロード」ボタンをクリックすると、私はただアクションを呼び出し、そこから$_FILESを使って選択した画像にアクセスできますが、ファイルをターゲットディレクトリに保存できないようです。

ファイルをターゲットパス(「C:\ myProject \ images」など)に保存してモデルを使用することはできますか?

EDIT:

ここ

私は少し後で見つかったソリューションです 私がアップロードしたファイルは、$_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. 
+0

私は言及を忘れてしまった、私はYiiのでば完全に新しいです、ダムの質問をするために私に叫ぶしないでください。 – Jordashiro

答えて

8

と仮定すると、「モデルなし」= "デシベルなしテーブル」

あなただけ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) 
+0

ありがとう、私はそれを試してみる:) – Jordashiro

+0

そのテキストファイルを保存していない私は試みたが運がない – Erum

関連する問題