enctype="multipart/form-data" ? http://book.cakephp.org/2.0/en/core-libraries/helpers/form.html#options-for-create
HTH Tarique On Tue, Jul 3, 2012 at 4:36 PM, JonStark <[email protected]> wrote: > Does someone has any clue ? Still stuck with this... thanks a lot. > > Le lundi 2 juillet 2012 12:47:06 UTC+2, JonStark a écrit : >> >> I'm trying to add a file upload to a form in cake 2.x : >> >> Controller : >> >>> public function add() { >>> >>> if ($this->request->is('post')) { >>> $this->request->data['Post']['user_id'] = >>> $this->Auth->user('id'); //stores user id >>> $filename = $this->request->data['Post']['imgur']; >>> $handle = fopen($filename, "r"); >>> $data = fread($handle, filesize($filename)); >>> >>> // $data is file data >>> $pvars = array('image' => base64_encode($data), 'key' => >>> 'a2b334c7cb5353ae110aea1d7d51b91e'); >>> $timeout = 30; >>> $curl = curl_init(); >>> >>> curl_setopt($curl, CURLOPT_URL, >>> 'http://api.imgur.com/2/upload.xml'); >>> curl_setopt($curl, CURLOPT_TIMEOUT, $timeout); >>> curl_setopt($curl, CURLOPT_POST, 1); >>> curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); >>> curl_setopt($curl, CURLOPT_POSTFIELDS, $pvars); >>> >>> $xml = curl_exec($curl); >>> >>> curl_close ($curl); >>> >>> debug($xml); >>> if ($this->Post->save($this->request->data)) { >>> $this->Session->setFlash('Your post has been saved.'); >>> $this->redirect(array('controller' => 'users', 'action' >>> => 'timeline', $this->Auth->user('username'))); >>> } else { >>> $this->Session->setFlash('Unable to add your post.'); >>> } >>> } >>> } >> >> >> Form : >> >>> <form class="form-inline" action="/manager/posts/add" method="post" >>> style="margin-bottom: 0px;"> >>> <input type="text" name="data[Post][game_name]" >>> class="input" id="game_name" style="width:250px;"> >>> <button type="submit" class="btn btn-primary"><i class="icon-ok >>> icon-white"></i></button> >>> <input type="file" name="data[Post][imgur]" id="imgur" value="" /> >>> >>> </form> >> >> >> >> This should work wel, except cake send only the file name, not the full >> path, so it's not uploaded to imgur : >> >> Warning (2): fopen(picture.png) [function.fopen]: failed to open stream: >> No such file or directory [APP/Controller/PostsController.php, line 23] >> >> >> Any idea on how to make it work ? Perhaps with a temp folder ? >> >> Thanks a lot ! > > -- > Our newest site for the community: CakePHP Video Tutorials > http://tv.cakephp.org > Check out the new CakePHP Questions site http://ask.cakephp.org and help > others with their CakePHP related questions. > > > To unsubscribe from this group, send email to > [email protected] For more options, visit this group at > http://groups.google.com/group/cake-php -- ============================================================= PHP for E-Biz: http://sanisoft.com ============================================================= -- Our newest site for the community: CakePHP Video Tutorials http://tv.cakephp.org Check out the new CakePHP Questions site http://ask.cakephp.org and help others with their CakePHP related questions. To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/cake-php
