So here's a quick update:

If in the form, I add the following, I'm noticing that the file is actually 
uploaded, original, to my files directory.

<?php echo $this->Form->create('Store', array('enctype' => 
'multipart/form-data')); ?>
<fieldset>
<legend><?php echo __('Add Store'); ?></legend>
<?php
echo $this->Form->input('name');
echo $this->Form->input('user_id');
echo $this->Form->input('type_id');
echo $this->Form->input('details');
echo $this->Form->input('phone');
echo $this->Form->input('address');
echo $this->Form->input('city');
echo $this->Form->input('state');
echo $this->Form->input('zip');
echo $this->Form->input('url');
echo $this->Form->input('is_published');
echo $this->Form->input('Image.0.photo', array('type' => 'file'));
//echo $this->Form->hidden('Image.0.is_cover', array('value' => 1));
?>
</fieldset>

However, when adding a store, I'm thrown a few errors:

Error: SQLSTATE[42S22]: Column not found: 1054 Unknown column 'Array' in 
'field list'

After adding the array('enctype' => 'multipart/form-data') to the form 
above, here's the new structure of the post data:

Array
(
    [Store] => Array
        (
            [name] => 
            [user_id] => 1
            [type_id] => 1
            [details] => 
            [phone] => 
            [address] => 
            [city] => 
            [state] => 
            [zip] => 
            [url] => 
            [is_published] => 0
        )

    [Image] => Array
        (
            [0] => Array
                (
                    [photo] => Array
                        (
                            [name] => IMG_0075.JPG
                            [type] => image/jpeg
                            [tmp_name] => /private/var/tmp/phporPNhe
                            [error] => 0
                            [size] => 1804407
                        )
                )
        )
)


On Sunday, March 3, 2013 1:04:16 PM UTC-7, James Lukensow wrote:
>
> I'm running into using Miles Uploader Plugin, found here. The issue is, 
> the photos are being created, but they're invalid, in all cases, they're 
> around 300 - 400 bytes. They do have the original file name, but that's 
> about it.
>
> Using latest version of Cakephp
> Using latest version of Uploader, using composer to gather all required 
> lib's.
>
> Now, they way I'm using it is:
>
> Controllers:
>
> Stores
> Images
>
> //Add method in the Stores Controller
> public function add() {
> if ($this->request->is('post')) {
> $this->Store->create();
> if ($this->Store->saveAll($this->request->data, array('deep' => true))) {
> $this->Session->setFlash(__('The store has been saved'));
> $this->redirect(array('action' => 'index'));
> } else {
> $this->Session->setFlash(__('The store could not be saved. Please, try 
> again.'));
> }
> }
> $users = $this->Store->User->find('list');
> $types = $this->Store->Type->find('list');
> $this->set(compact('users', 'types'));
> }
>
> Here's my add.ctp, just a sample of what I changed:
>
> <div class="stores form">
> <?php echo $this->Form->create('Store'); ?>
> <fieldset>
> <legend><?php echo __('Add Store'); ?></legend>
> <?php
> echo $this->Form->input('name');
> echo $this->Form->input('user_id');
> echo $this->Form->input('type_id');
> echo $this->Form->input('details');
> echo $this->Form->input('phone');
> echo $this->Form->input('address');
> echo $this->Form->input('city');
> echo $this->Form->input('state');
> echo $this->Form->input('zip');
> echo $this->Form->input('url');
> echo $this->Form->input('is_published');
> echo $this->Form->input('Image.0.name', array('type' => 'file'));
> //echo $this->Form->hidden('Image.0.is_cover', array('value' => 1));
> ?>
> </fieldset>
> <?php echo $this->Form->end(__('Submit')); ?>
> </div>
>
> Now, in the Images Model, I have the following:
>
> public $actsAs = array(
> 'Uploader.Attachment' => array(
> 'name' => array(
> 'nameCallback' => '',
> 'append' => '',
> 'prepend' => '',
> 'tempDir' => TMP,
> 'uploadDir' => '',
> 'finalPath' => 'img/uploads/',
> 'dbColumn' => '',
> 'metaColumns' => array(),
> 'defaultPath' => '',
> 'overwrite' => true,
> 'stopSave' => true,
> 'allowEmpty' => true,
> 'transforms' => array(),
> 'transport' => array()
> )
> )
> );
>
> Here's the structure for the Images table:
>
> CREATE TABLE IF NOT EXISTS `images` (
>   `id` int(11) NOT NULL AUTO_INCREMENT,
>   `store_id` int(11) DEFAULT NULL,
>   `name` varchar(255) DEFAULT NULL,
>   `is_cover` tinyint(1) DEFAULT '0',
>   `path` varchar(255) DEFAULT NULL,
>   PRIMARY KEY (`id`)
> ) ENGINE=InnoDB  DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;
>
> So, part of this is working correctly, I'm just not sure why they actual 
> file isn't being uploaded. When I use Charles, I see the post for when I 
> submit a Store, but it doesn't look like the photo is actually being 
> uploaded at all.
>
> Any help would be awesome!
>

-- 
Like Us on FaceBook https://www.facebook.com/CakePHP
Find us on Twitter http://twitter.com/CakePHP

--- 
You received this message because you are subscribed to the Google Groups 
"CakePHP" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/cake-php?hl=en.
For more options, visit https://groups.google.com/groups/opt_out.


Reply via email to