2012-03-06 10 views
0

こんにちは私はファイルをアップロードできるファイルアップロードシステムを作成しようとしており、ファイル名がテーブルにアップロードされたMYSQL IDに変更されます。 これは...ファイルがディレクトリにアップロードされていないが、情報がSQL田部にアップロードされているがCakePHP 2.0ファイルのアップロードが正常に動作しない

function add() { 
    if (!empty($this->data)) { 
     $this->Upload->create(); 
     if ($this->uploadFile() && $this->Upload->save($this->data)) { 
      $this->Session->setFlash(__('<p class="uploadflash">The upload has been saved</p>', true)); 
      $this->redirect(array('action' => 'add')); 
     } else { 
      $this->Session->setFlash(__('<p class="uploadflash">The upload could not be saved. Please, try again.</p>', true)); 
     } 
    } 
     } 

function uploadFile() { 
    $file = $this->request->data['Upload']['file']; 
    if ($file['error'] === UPLOAD_ERR_OK) { 
     if (move_uploaded_file($file['tmp_name'], APP.'webroot/files/uploads'.DS.$this->Upload->id.'.mp4')) { 
      $this->Upload->save($this->data); 
      return true; 
     } 
    } 
    return false; 
} 

私のコードです。

なぜこの関数$ this-> Upload-> idがファイルの名前変更で機能していないのでしょうか? 私はそれをスピーチマークに入れて、ファイル名を "$ this-> Upload-> id.mp4"に変更しますが、情報が保存されているフィールドがあれば、114.mp4のようになります。 誰もが考えている?

ありがとうございます。

答えて

0

まず保存する必要があります。 あなたの場合、$ this-> Upload-> idは空です。

あなたの興味のために: $ this-> Upload-> create();クリアもの$ this - > Upload-> ID

参照:

http://api20.cakephp.org/class/model#method-Modelcreate http://api20.cakephp.org/view_source/model#line-1381

+0

は、働いていたことそれを非常にありがとう最初に保存してから名前を変更する場合に過ぎませんでした。とても有難い! – 001221

関連する問題