upload de fichier dans cakephp 2.3

Je suis nouveau dans cakephp et je suis en train de créer un simple fichier de téléchargement avec cakephp 2.3 voici mon contrôleur

public function add() {
    if ($this->request->is('post')) {
        $this->Post->create();
           $filename = WWW_ROOT. DS . 'documents'.DS.$this->data['posts']['doc_file']['name']; 
           move_uploaded_file($this->data['posts']['doc_file']['tmp_name'],$filename);  


        if ($this->Post->save($this->request->data)) {
            $this->Session->setFlash('Your post has been saved.');
            $this->redirect(array('action' => 'index'));
        } else {
            $this->Session->setFlash('Unable to add your post.');
        }
     }
 }

et mon ajouter.ctp

echo $this->Form->create('Post');
echo $this->Form->input('firstname');
echo $this->Form->input('lastname');
echo $this->Form->input('keywords');
echo $this->Form->create('Post', array( 'type' => 'file'));
echo $this->Form->input('doc_file',array( 'type' => 'file'));
echo $this->Form->end('Submit')

il enregistre firstname, lastname, mots-clés, et le nom du fichier dans la bd , mais le fichier que je veux enregistrer dans app/webroot/documents est pas l'économie , quelqu'un peut-il aider ? Grâce

Mise à jour

thaJeztah j'ai fait comme tu dit, mais il donne quelques erreurs ici est de contrôleur si je ne me trompe pas

public function add() {
     if ($this->request->is('post')) {
         $this->Post->create();
            $filename = WWW_ROOT. DS . 'documents'.DS.$this->request->data['Post']['doc_file']['name']; 
           move_uploaded_file($this->data['posts']['doc_file']['tmp_name'],$filename);



         if ($this->Post->save($this->request->data)) {
             $this->Session->setFlash('Your post has been saved.');
             $this->redirect(array('action' => 'index'));
         } else {
            $this->Session->setFlash('Unable to add your post.');
         }
     }

 }

et mon ajouter.ctp

 echo $this->Form->create('Post', array( 'type' => 'file'));
 echo $this->Form->input('firstname'); echo $this->Form->input('lastname');
 echo $this->Form->input('keywords');
 echo $this->Form->input('doc_file',array( 'type' => 'file'));
 echo $this->Form->end('Submit') 

et les erreurs sont

Avis (8): Tableau de conversion de chaîne de caractères
[CORE\Cake\Model\Datasource\DboSource.php ligne 1005]

Erreur de base de données d'Erreur: SQLSTATE[42S22]: Colonne qui n'a pas trouvé: 1054 Unknown
la colonne 'Array' in 'field list'

Requête SQL: INSERT INTO première.postes (prénom, nom, mots-clés,
doc_file) VALUES ('dfg', 'cbhcfb', 'dfdbd', Array)

et Victor j'ai fait votre version trop , il ne marche pas trop .

OriginalL'auteur Hovo | 2013-04-28