He probado el behavior, pero me da un error en el array_merge() ¿...?

On 7 ago, 00:26, "Pablo Viojo" <[EMAIL PROTECTED]> wrote:
> http://www.google.com/search?q=upload+behavior+cakephp
>
> On 8/6/07, Pablo Moretti <[EMAIL PROTECTED]> wrote:
>
>
>
>
>
> > Tenia el articulo guardado en un PDF espero que te sirva, Saludos
>
> > CREATE TABLE files (
> >   id INT(11) NOT NULL AUTO_INCREMENT,
> >   name VARCHAR(75) NOT NULL,
> >   type VARCHAR(255) NOT NULL,
> >   size INT(11) NOT NULL,
> >   data MEDIUMBLOB NOT NULL,
> >   created DATETIME,
> >   modified DATETIME,
> >   PRIMARY KEY (id)
> > );
> > Note: Use MEDIUMBLOB or LONGBLOB as data type unless you know for sure that
> > the file size of the
> > uploaded files is never bigger than 64kB.
> > The model is straight-forward:
> > // app/models/file.php
> > class File extends AppModel
> > {
> >     var $name = 'File';
> > }
> > We omit the controller for the moment and create directly the view:
> > // app/views/files/add.thtml
> > <form action="/files/add" enctype="multipart/form-data" method="post">
> >     <?php echo $html->file('File'); ?>
> >     <?php echo $html->submit('Upload')); ?>
> > </form>
> > So, now we ready to build the controller and to implement the add()
> > function:
> > // app/controllers/files_controller.php
> > class FilesController extends AppController
> > {
> >     function add()
> >     {
> >         if (!empty($this->params['form']) &&
>
> > is_uploaded_file($this->params['form']['File']['tmp_name']))
> >         {
> >             $fileData =
> > fread(fopen($this->params['form']['File']['tmp_name'
>
> > $this->params['form']['File']['size']);
> >             $this->params['form']['File']['data'] =
> > $fileData;
>
> > $this->File->save($this->params['form']['File']);
> >             $this->redirect('somecontroller/someaction');
> >         }
> >     }
> > }
> > Easy, isn't it? Up to now we have stored the file in the database. To
> > retrieve the file from the database, we
> > need a download() action which we add to our controller:
> > function download($id)
> > {
> >     $file = $this->File->findById($id);
> >     header('Content-type: ' . $file['File']['type']);
> >     header('Content-length: ' . $file['File']['size']);
> >     header('Content-Disposition: attachment; filename='.$file['File']['name'
> >     echo $file['File']['data'];
> >     exit();
> > }
>
> > -------------------
>
> >  El día 6/08/07, Daniel Perez <[EMAIL PROTECTED]> escribió:
>
> > > Mmmmm... la cosa, es ¿donde esta ese behavior?
>
> > > Parece ser que el enlace ya no funciona...
>
> >http://bakery.cakephp.org/articles/view/improved-upload-behaviour-wit...
>
> > > Saludos,
>
> > > On 1 jul, 23:40, Gorka <[EMAIL PROTECTED]> wrote:
> > > > Pues resulta que es extremadamente sencillo de utilizar y funciona
> > > > estupendamente, lástima que el artículo de Bakery sea (en mi opinión)
> > > > francamente malo intentando explicarlo.
>
> > > > El proceso para utlizarlo es tan sencillo como copiar el behaviour
> > > > (CakePHP >= 1.2) en la carpeta /app/models/behaviours o en /cake/libs/
> > > > model/behaviours e incluir un fragmento como este en el modelo que
> > > > necesitasubirficheros:
>
> > > >     var $actsAs = array('Upload' => array(
> > > >                                 'foto1' => array(
> > > >                                                 'dir'
> > => 'files/images',
>
> > 'overwrite_existing' => false,
>
> > 'create_directory' => true,
>
> > 'allowed_mime' => array('image/jpeg', 'image/pjpeg', 'image/
> > > > gif', 'image/png'),
>
> > 'allowed_ext' => array('.jpg', '.jpeg', '.png', '.gif'),
>
> > 'thumbsizes' => array(
>
> > 'small'     =>       array('width'=>100, 'height'=>100),
>
> > 'medium' =>  array('width'=>400, 'height'=>300)
> > > >                                                 )
> > > >                                 ),
> > > >                                 'foto2' => array(
> > > >                                                 'dir'
> > => 'files/images',
>
> > 'overwrite_existing' => false,
>
> > 'create_directory' => true,
>
> > 'allowed_mime' => array('image/jpeg', 'image/pjpeg', 'image/
> > > > gif', 'image/png'),
>
> > 'allowed_ext' => array('.jpg', '.jpeg', '.png', '.gif'),
>
> > 'thumbsizes' => array(
>
> > 'small' =>   array('width'=>100, 'height'=>100),
>
> > 'medium'   =>        array('width'=>400, 'height'=>300)
> > > >                                                 )
> > > >                                 ),
> > > > /* ... */
> > > >                         )
> > > >         );
>
> > > > Donde "foto1" y "foto2" son los nombres de los campos del modelo en
> > > > los que se va a almacenar el nombre del fichero subido. Con
> > > > 'Thumbsizes' hemos especificado los tamaños de thumb que se generarán
> > > > automáticamente, y sólo tenemos que preocuparnos de que el directorio
> > > > de subida tenga permiso de escritura para el servidor web (775 en
> > > > Unix).
>
> > > > En la vista en la que queremossubirlos ficheros indicamos los campos
> > > > de formulario (que deben ser
> > 'enctype="multipart/form-data"') en la
> > > > forma $form->file('Modelo.campo') y listo.
>
> > > > Una maravilla, oiga.
>
> > > > On 29 jun, 13:44, Gorka <[EMAIL PROTECTED]> wrote:
>
> > > > > He visto uploadbehaviour en Bakery, pero no acabo de entender cómo
> > > > > funciona. ¿Después de crear la tabla de uploads en la BBDD se añade el
> > > > > behaviour a cualquier modelo que tengamos (por ejemplo, artículos) y
> > > > > listo para admitir imágenes en ese modelo? ¿Admite varias imágenes?
> > > > > Porque no veo cómo relaciona el artículo con las imágenes... no acabo
> > > > > de coger el asunto, y el caso es que vendría genial algo así. Si lo
> > > > > has probado, ¿podrías comentarlo?
>
> > > > > On 27 jun, 13:26, dardosordi <[EMAIL PROTECTED]> wrote:
>
> > > > > > De todos modos en 1.2 puedes probar el uploadbehaviour (cuando
> > tengas
> > > > > > claros los conceptos y entiendas comosubirun archivo por ti mismo)
> > > > > > que es una maravilla.
>
> > > > > > On 26 jun, 08:09, lloku < [EMAIL PROTECTED]> wrote:
>
> > > > > > > Tienes un post un poco mas abajo:
> >http://groups.google.com/group/CakePHP-es/browse_thread/thread/b07d26...
>
> > > > > > > En el que Carlos Z. le explica a otro usuario de una manera
> > bastante
> > > > > > > correcta la funcion que debe añadir en el controlador para guardar
> > una
> > > > > > >imagen... Este método no tiene nada que ver con el conocimiento de
> > > > > > > cake, sino con el de PHP...
>
> > > > > > > Como apuntes por si desconoces del todo el tema, el formulario con
> > el
> > > > > > > que envías la imágen debe ser: ENCTYPE='multipart/form-data' para
> > > > > > > poder envíar ficheros. Lo que se hace, lógicamente, no es "guardar
> > una
> > > > > > >imagenen unabasededatos", sino guardar un archivo en el servidor y
> > > > > > > guardar el nombre de dicho archivo en un campo de la tabla creado
> > para
> > > > > > > tal efecto.
>
> > > > > > > Quizás te interese depurar un poco la función, filtrando los mime
> > type
> > > > > > > para asegurarte de que lo que te envían es unaimagen(propiedad
> > > > > > > [type]) y asegurarnos de que no existe ya un archivo con ese
> > nombre, y
> > > > > > > si es así cambiarlo.
>
> > > > > > > Todo esto lo encontraras en manuales de php, si mal no recuerdo en
> > el
> > > > > > > manual oficial de PHP hay un apartado dedicado al manejo de
> > archivos,
> > > > > > > ahí encontraras la información necesaria y ejemplos.
>
> > > > > > > Saludos.- Ocultar texto de la cita -
>
> > > > > > - Mostrar texto de la cita -- Ocultar texto de la cita -
>
> > > > > - Mostrar texto de la cita -
>
> --
> Pablo Viojo
> [EMAIL PROTECTED]://pviojo.net- Ocultar texto de la cita -
>
> - Mostrar texto de la cita -


--~--~---------~--~----~------------~-------~--~----~
Has recibido este mensaje porque estás suscrito a Grupo "CakePHP-es" de Grupos 
de Google.
 Si quieres publicar en este grupo, envía un mensaje de correo 
electrónico a [email protected]
 Para anular la suscripción a este grupo, envía un mensaje a [EMAIL PROTECTED]
 Para obtener más opciones, visita este grupo en 
http://groups.google.com/group/CakePHP-es?hl=es.

-~----------~----~----~----~------~----~------~--~---

Responder a