miércoles, 19 de diciembre de 2012

jDownloads: área de descarga gratuita para Joomla

Vamos a presentar un componente de Joomla para crear un área de descargas: jDownloads. Es un componente gratuito con una funcionalidad bastante completa.

Descargamos el componente de la página del desarrollador para nuestra versión de Joomla

http://www.jdownloads.com/index.php?option=com_jdownloads&Itemid=133&view=summary&cid=320&catid=33

Una vez descargado lo instalaremos desde el gestor de extensiones de Joomla:


 Pulsamos sobre "Start jDownloads" para acceder al panel de control (o vamos a Componentes > jDownloads):



CREAR UN APARTADO DE DESCARGAS

El primer paso será crear una categoría (que posteriormente enlazaremos con un elemento de menú). Pulsamos el icono Categories y pulsamos en "Nueva". Rellenamos los datos de la categoría. Nosotros hemos elegido el nombre "Publico" para hacer un apartado de descargas para el público general.


Ahora vamos a crear una descarga. Pulsamos en la pestaña "Downloads" y el botón "Nuevo":


Aparece un formulario con un botón para elegir los ficheros que queremos subir a nuestro servidor. Para que la descarga quede enlazada iremos a la pestaña "Manage files" y elegimos nuestro archivo subido:


Pulsamos sobre "Create Download" y rellenamos el formulario que aparece con la categoría de la descarga (nuestra categoría "Publico", el tipo de archivo, descripción, etc...)


Pulsamos "Guardar" y tendremos la descarga creada y accesible desde el listado:


Ahora tenemos que crear el elemento de menú enlazado con la categoría. Nos vamos al menú concreto donde queramos que aparezca, pulsamos "Nuevo" y seleccionamos el tipo de elemento de menú jdownloads > Category Layout



 Fijamos la categoría "Publico" creada, "descargas" como nombre del elemento de menú y guardamos. En nuestro front-end tendremos disponible el nuevo elemento de menú:



Y al pulsarlo aparecerán las descargas en la categoría "Publico" (de momento sólo la única que hemos creado, pero seguro que pronto añadimos más):



phpMyAdmin: activar el diseñador

Ya comentamos en el post sobre instalación de phpMyAdmin que incorporaba una función para diseñar bases de datos y visualizar el modelo entidad relación. Esta opción no se activa por defecto, debemos hacerlo manualmente. Para ello iremos al archivo de configuración config.inc.php y añadimos las siguientes líneas (no olvidéis hacer una copia del archivo antes de editarlo para poder restaurarlo en caso de que aparezcan errores en el proceso ;-):

$cfg['Servers'][$i]['pmadb'] = 'phpmyadmin';
$cfg['Servers'][$i]['bookmarktable'] = 'pma_bookmark';
$cfg['Servers'][$i]['relation'] = 'pma_relation';
$cfg['Servers'][$i]['table_info'] = 'pma_table_info';
$cfg['Servers'][$i]['table_coords'] = 'pma_table_coords';
$cfg['Servers'][$i]['pdf_pages'] = 'pma_pdf_pages';
$cfg['Servers'][$i]['column_info'] = 'pma_column_info';
$cfg['Servers'][$i]['history'] = 'pma_history';
$cfg['Servers'][$i]['designer_coords'] = 'pma_designer_coords';

 
 
Ahora crearemos una base de datos llamada phpmyadmin



Una vez creada debemos ejecutar el siguiente script (podéis copiarlo en un archivo de texto con extensión .sql e importarlo desde phpMyAdmin o copiarlo directamente en la consulta SQL). Si lo preferís podéis descargarlo desde este enlace: http://www.alcasoft.es/index.php/descargas/summary/3-publico/2-script-para-activr-el-disenador-de-phpmyadmin




DROP DATABASE IF EXISTS `phpmyadmin`;
CREATE DATABASE `phpmyadmin`;
USE phpmyadmin;


GRANT SELECT, INSERT, DELETE, UPDATE ON `phpmyadmin`.* TO
    'pma'@localhost;



CREATE TABLE `pma_bookmark` (
  `id` int(11) NOT NULL auto_increment,
  `dbase` varchar(255) NOT NULL default '',
  `user` varchar(255) NOT NULL default '',
  `label` varchar(255) NOT NULL default '',
  `query` text NOT NULL,
  PRIMARY KEY  (`id`)
);


CREATE TABLE `pma_column_info` (
  `id` int(5) unsigned NOT NULL auto_increment,
  `db_name` varchar(64) NOT NULL default '',
  `table_name` varchar(64) NOT NULL default '',
  `column_name` varchar(64) NOT NULL default '',
  `comment` varchar(255) NOT NULL default '',
  `mimetype` varchar(255) NOT NULL default '',
  `transformation` varchar(255) NOT NULL default '',
  `transformation_options` varchar(255) NOT NULL default '',
  PRIMARY KEY  (`id`),
  UNIQUE KEY `db_name` (`db_name`,`table_name`,`column_name`)
);

CREATE TABLE `pma_history` (
  `id` bigint(20) unsigned NOT NULL auto_increment,
  `username` varchar(64) NOT NULL default '',
  `db` varchar(64) NOT NULL default '',
  `table` varchar(64) NOT NULL default '',
  `timevalue` time NOT NULL,
  `sqlquery` text NOT NULL,
  PRIMARY KEY  (`id`),
  KEY `username` (`username`,`db`,`table`,`timevalue`)
);

CREATE TABLE `pma_pdf_pages` (
  `db_name` varchar(64) NOT NULL default '',
  `page_nr` int(10) unsigned NOT NULL auto_increment,
  `page_descr` varchar(50) NOT NULL default '',
  PRIMARY KEY  (`page_nr`),
  KEY `db_name` (`db_name`)
);

CREATE TABLE `pma_relation` (
  `master_db` varchar(64) NOT NULL default '',
  `master_table` varchar(64) NOT NULL default '',
  `master_field` varchar(64) NOT NULL default '',
  `foreign_db` varchar(64) NOT NULL default '',
  `foreign_table` varchar(64) NOT NULL default '',
  `foreign_field` varchar(64) NOT NULL default '',
  PRIMARY KEY  (`master_db`,`master_table`,`master_field`),
  KEY `foreign_field` (`foreign_db`,`foreign_table`)
);

CREATE TABLE `pma_table_coords` (
  `db_name` varchar(64) NOT NULL default '',
  `table_name` varchar(64) NOT NULL default '',
  `pdf_page_number` int(11) NOT NULL default '0',
  `x` float unsigned NOT NULL default '0',
  `y` float unsigned NOT NULL default '0',
  PRIMARY KEY  (`db_name`,`table_name`,`pdf_page_number`)
);

CREATE TABLE `pma_table_info` (
  `db_name` varchar(64) NOT NULL default '',
  `table_name` varchar(64) NOT NULL default '',
  `display_field` varchar(64) NOT NULL default '',
  PRIMARY KEY  (`db_name`,`table_name`)
);

CREATE TABLE `pma_designer_coords` (
  `db_name` varchar(64) NOT NULL default '',
  `table_name` varchar(64) NOT NULL default '',
  `x` INT(11) default NULL,
  `y` INT(11) default NULL,
  `v` TINYINT(4) default NULL,
  `h` TINYINT(4) default NULL,
  PRIMARY KEY (`db_name`,`table_name`)
                                                   );
Ahora cerramos sesión en phpMyAdmin, volvermos a entrar y al seleccionar una base de datos tendremos una nueva pestaña con el menú del diseñador:
 
 Es un diseñador muy sencillito pero útil (cuando trabajéis con aplicaciones basadas en bases de datos complejas agradeceréis tener el mapa de la base de datos al lado para diseñar las consultas).


phpMyAdmin: administración remota de un servidor MySQL


Si sois programadores web seguramente habréis trabajado con MySQL. Se trata de un gestor de bases de datos relacional muy potente y, lo más importante, software libre. Si no queréis administrarlo en línea de comandos o no disponéis de una aplicación de software (o simplemente queréis tener acceso a la administración desde cualquier equipo conectado a Internet) disponéis de esta alternativa: phpMyAdmin.

phpMyAdmin es una herramienta escrita en PHP para administrar bases de datos MySQL. En realidad no tenemos que "instalar" nada: simplemente descargarlo, descomprimirlo en nuestro servidor web y configurar la conexión con la base de datos. Si lo instalamos desde un Linux y tenemos permisos de administración del sistema es frecuente encontrar un paquete de instalación (desde Debian y Ubuntu existen). Podemos instalarlos con deb, apt-get o utilizando los gestores del entorno gráfico. Para cualquier sistema operativo tenemos la alternativa siguiente.


Requisitos del sistema


Como es obvio, los requisitos previos para la aplicación son:


  • Servidor web con soporte para PHP
  • Servidor de bases de datos MySQL
  • Un navegador web

Descarga e instalación


Descargamos los archivos de la página del fabricante:

http://www.phpmyadmin.net/home_page/downloads.php

Recordad que son archivos PHP y librerías (jquery, css...): son multiplataforma y no tenemos que elegir sistema operativo. Nosotros elegiremos la distribución comprimida en zip por su portabilidad (podremos descomprimirlo en Linux, Windows, hosting online...). Una vez descargado el archivo lo descomprimimos en el directorio elegido en nuestro servidor web (os recomiendo una carpeta con el nombre phpmyadmin para que sea accesible desde tudominio/phpmyadmin.

Configuración


Ahora debemos configurar el acceso a nuestra base de datos. Debemos editar el archivo config.inc.php de la carpeta raíz de phpMyAdmin y editar las siguientes líneas:

Ruta absoluta para acceder a phpMyAdmin: $cfg['PmaAbsoluteUri']. Pondremos localhost si es un servidor local o tu dominio si es el caso:

$cfg['PmaAbsoluteUri'] = 'http://localhost/phpMyAdmin';
$cfg['PmaAbsoluteUri'] = 'http://tudominio/phpMyAdmin';

Host o IP del servidor de MySQL:

$cfg['Servers'][$i]['host'] = 'localhost';

Nombre de usuario de la base de datos. Si se trata de un servidor local podemos utilizar la cuenta de root. Si tenemos un servidor externo (como el ofrecido por el hosting) no dispondremos de la cuenta de root, seguramente tendremos un usuario facilitado por el proveedor para administrar nuestras bases de datos.
$cfg['Servers'][$i]['user'] = 'usuario';


Clave de acceso para el usuario especificado en el paso anterior.

$cfg['Servers'][$i]['password'] = 'contraseña';

Existen otros parámetros que podemos configurar:

$cfg['Servers'][$i]['AllowNoPassword'] = false;   Impedimos que se acceda sin contraseña (importante mantenerlo en false)

$cfg['Servers'][$i]['port'] = ''; Podemos especificar otro puerto en caso de que el servidor no escuche por el puerto por defecto.

$cfg['Servers'][$i]['extension'] = 'mysqli';    Elegimos si utilizamos la conexión de tipo MySQL o MySQLi.

$cfg['DefaultLang'] = 'en-utf-8';    Juego de caracteres por defecto del servidor.


Acceso

Una vez configurado su uso es muy sencillo. Nos conectamos desde un navegador web a la URL que especificamos anteriormente en el fichero de configuración (en nuestro ejemplo está instalado en un servidor local, la URL es http://localhost/phpmyadmin). Ponemos nuestro usuario y contraseña de acceso y aparecerá el panel de control:



Como podéis ver es un panel de control completo, podemos hacer prácticamente cualquier operación sobre la base de datos (incluso una vista de diseño que explicaremos en otro post). 

La principal ventaja es que tendremos disponible la administración remota desde cualquier equipo con un navegador, es una herramienta muy potente y versátil.

Espero que os resulte útil.

Ideas conceptuales: gadgets de un posible futuro

Reconozco que me encantan los diseños conceptuales de todo tipo de gadgets, vehículos, viviendas... Hay algunos que incluiría sin dudarlo en la partida correspondiente del presupuesto doméstico :-P. Navegando esta mañana he encontrado el perfil de Creative en Google+ con un par de ideas muy interesantes:






Vamos, si existiese esa mesa de trabajo ya la estaba buscando sitio en casa! El terminal de abajo tampoco tiene desperdicio (siempre y cuando podamos utilizar los diez dedos para escribir a toda pastilla, no como en los actuales teclados proyectados).

¿Qué os parecen?

ElfYourself: un clásico para felicitar la navidad con elfos bailarines

Probablemente ya lo conozcáis (ha circulado mucho en los últimos años), pero yo aún sigo partiéndome con esta felicitación de navidad. Se llama ElfYourself y permite subir hasta cinco fotos de familiares o amigos para que se genere un video con elfos bailando con sus caras. Una forma original de tocar las narices felicitar las fiestas!



Nos conectamos a la página de ElfYourself y en el apartado "Make an e-card" pulsamos el botón "Upload Photo".



Seleccionamos "Upload from desktop" para coger las imágenes del escritorio (aunque podemos cogerlas de Facebook o tomarlas con la webcam). Podemos subir hasta cinco imágenes, el orden importa: la primera imagen es el elfo protagonista, las dos siguientes también salen bastante, y el cuarto y el quinto salen cada vez menos (según el baile seleccionado luego). Seleccionaremos la imagen y aparece una pantalla para ajustar la foto a la cara del elfo:




Después pulsamos siguiente para guardar los cambios.




Podemos subir otra foto o pulsar el botón "let's dance" para generar el video. Nosotros hemos subido cuatro más hasta que queda completo y entonces pulsamos el botón "Let's dance"



Se genera un video con los elfos bailando:



Aquí podemos escoger varias opciones. Las más interesantes son el tipo de video (va cambiando con los años, se mantienen "vivos") y el envío gratuito a través de correo electrónico o redes sociales. Si quieres puedes descargarlo (pero esa opción ya no es gratis). Nosotros hemos pulsado compartir por email (icono sobre) y se abre la siguiente ventana:


Ponemos nuestro nombre y correo y abajo los correos destino. Les llegará un enlace para poder ver el video generado.

Animaos con esta felicitación "original" (más vista que las reposiciones de los Simpsons, "original" por lo heterodoxo de la misma, jeje). Tendréis unas risas garantizadas.


Recomendaciones de Alcasoft