No existe ninguna imagen

Archive for marzo, 2010

jFileBrowser para TinyMCE . Sube y maneja archivos usando TinyMCE, PHP y MySQL

Viernes, marzo 5th, 2010

jFileBrowser_thumb

Desde hace tiempo tenía el deseo de compartir este plugin. Viene al caso decir que yo uso TinyMCE como editor web del C.M.S. costumizado que ofrezco a mis clientes. El editor es excelente, pero tiene un gran problema: El plugin para subir/editar archivos  no es gratis. Tanto MCImageManager como MCFileManager son soluciones de pago. Después de múltiples fracasos tratando de implementar soluciones gratis decidí tratar de hacer un plugin yo mismo. También me gustaba la idea de almacenar las rutas de las imágenes y otro tipo de información en una base de datos. De esta manera podría fácilmente agregar un buscador, o mayor organización a los archivos, algo que cuesta un poco más de trabajo (por lo menos para mí) al trabajar directamente con archivos del ftp.

Yo no estoy acostumbrado a trabajar con javascript pero, afortunadamente, TinyMCE posee excelente documentación sobre como crear un plugin. Debido a mi limitado conocimiento de javascript no pude hacer algunas cosas como usar ajax al mostrar contenido, pero aún así quedé bastante contento con el resultado.

Debo agradecer a okram por crear las librerías PHPPaging y PHPImagen, las cuales no sólo he usado en este pluging, sino también en muchos de mis proyectos.  Gracias también a Mark James por sus exelentes íconos.

Características del plugin:

  • Creación de directorios virtuales
  • Subir varios tipos de archivos
    • Imágenes (jpg, gif y png)
    • Documentos PDF
    • Documentos Word
    • Documentos Excel
    • Documentos PowerPoint
    • Documentos .txt
  • Creación automática de thumbnails para la organización (PHPImagen)
  • Uso de paginación de los directorios y archivos (PHPPaging)
  • Vistas de thumbnails y listado de los archivos
  • Búsqueda por nombre de archivo

Requerimientos:

  • PHP5 o más reciente
  • MySQL 4 o más reciente
  • Librería GD para PHPImagen

Lista de cosas a mejorar:

  • Cambiar navegación y la forma de mostrar contenido a Ajax
  • Poder subir múltiples archivos
  • Poder subir y crear thumbnails a videos

Instalación:

  1. Descomprimir el archivo zip en la carpeta de tiny_mce/plugin
  2. Crear las tablas en tu base de datos MySQL. Usa el archivo jFileBrowser.sql provisto en el zip.
  3. Encuenta el archivo include/config.inc.php y cambia las siguientes lineas por tu información de tu base de datos
    $sql_db = 'Base_de_datos';
    $sql_user = 'Usuario';
    $sql_password = 'Password';
    
  4. Agrega lo sigiente en tu tinyMCE.init():
    añade jfilebrowse a la lista de plugins

    plugins : "jfilebrowser"
    

    añade jfilebrowse a la lista de botones

    theme_advanced_buttons1 : "jfilebrowser"
    
  5. Cambiar los permisos de la carpeta:
    tiny_mce/plugins/jfilebrowser/archivos/

    a 777, osea, que se pueda leer y escribir.