Hola!.. ¿y sabes cómo hacerlo de esa manera? porque me interesa aprender las dos formas…
Hola!.. ¿y sabes cómo hacerlo de esa manera? porque me interesa aprender las dos formas…
Bueno, acá un ejemplo de como puedes subir los archivos para guardarlos en la base de datos y una acción para descargarlos.
El ejemplo no está muy elaborado pero hace lo que necesitas así que solo debes adaptarlo a tus necesidades.
De acuerdo con JCS,
Básicamente lo que se hace es mover el archivo a un directorio "propio" de la aplicación y se le da un nombre ÚNICO (normalmente un MD5 o SHA del Nombre+NúmeroAleatorio), y en la base de datos se almacena el nombre, de forma que sea fácilmente localizable, y datos complementarios.
Saludos.
no, mi ejemplo es para subir los archivos a la base de datos ^^, yo siempre uso el sistema de archivos pero pues cada quien tiene sus propias necesidades y si el requerimiento es guardar los archivos en la base de datos pues hay que solucionarlo.
de nuevo si no es obligatorio que el archivo este en la base de datos, hay una extension que hace bastante facil trabajar con archivos.
JCS hermano, muchas gracias!!! de verdad me fue muy útil toda la información que me diste desde el primer momento. He resuelto y más que eso comprendido muchas cosas de este framework y de php en general…
pues que bueno que he podido ayudar, si necesitas algo nada mas publica y alguien con seguridad te ayudara a resolver tus dudas
Cabe mencionar que hemos creado un nuevo foro en español con varias temáticas en donde podemos hacer las preguntas a la comunidad en español:
http://www.yiiframeworkenespanol.org/foro/
Además, está en desarrollo el sitio web en español, aunque por ahora lo único funcional es el foro.
Saludos.
Hola, hay dos maneras bien sencillas de hacerlo, ya te las han puesto aca, ahora, las resumo asi:
public function actionDescargarArchivo($idArchivo){
$contenidoDelArchivo = [...algo que hagas para obtener los datos del archivo...];
// si el contenido es una imagen o un texto, pones aqui el tipo MIME de tu contenido:
header('Content-type: image/png');
// si el contenido es un archivo para que se descargue cuando lo solicitan, es decir que aparezca una caja "descargando archivo...progreso...60%"
$filename ='nombreDeseado.algo';
header('Content-Disposition: attachment; filename="'.$filename.'"');
// opcionalmente puedes agregar este encabezado sin son archivos binarios y no solo ascii.
header("Content-Transfer-Encoding: binary");
// esto es lo que causa el envio del archivo hacia el browser
echo $contenidoDelArchivo;
}
Hola buen día! ¿cómo estas?.. ¿será que este ejemplo también funciona para postgresql?
Sí señor, es "DB-aware", es decir, independiente de cualquier motor de base de datos.
Saludos
Buenos días amigos tengo el mismo problema en subir y obtener la información en la Base de datos como solucionaron el problema.
Gracias