Tutorial Instalación Apache + PHP + MySQL + PHPMyAdmin en Ubutnu

De construmbre me encuentro con el mismo problema al formatear mi ordenador. Existen muchas aplicaciones LAMP como XAMP que te permiten instalar estas funcionalidades. Así que haré mi propio tutorial de instalación de LAMP para UBUNTU.

sudo aptitude install mysql-server mysql-client

Nos pedirá password y el repeat.

sudo apt-get install apache2

Comproba en http://localhost si funciona la configuración de apache.

it’s works!

;)

Ahora le toca a PHP. Lo instalamos.

sudo apt-get install php5 libapache2-mod-php5

sudo aptitude search php5

sudo aptitude install php5-mysql php5-curl php5-gd php5-idn php-pear php5-imagick php5-imap php5-mcrypt php5-memcache php5-mhash php5-ming php5-ps php5-pspell php5-recode php5-snmp php5-sqlite php5-tidy php5-xmlrpc php5-xsl php5-json

service apache2 restart

Comprobamos si funciona metiendo en /var/www/ un fichero example.php con el siguiente texto:

<?php phpinfo();?>

Ahora sólo falta instalar phpmyadmin

sudo apt-get install phpmyadmin

cambiamos la dirección donde apunta.

sudo ln -s /usr/share/phpmyadmin /var/www/

Bueno a mi me servirá.;)

Aprender a crear extensiones para Firefox

Programar se aprende mirando! Mirando código por supuesto, porque si fuera por mirar la tele mal iríamos ;) . Bueno al grano que me desvío. Si teneis problemas para encontrar códigos fuentes de extensiones interesantes, os aconsejo un truquillo para poder tener todas al alcance. El truquillo, que es tan viejo como las extensiones, es utilziar el wget para poder descargar los ficheros directamente de adds.mozilla. ¿Cómo?Muy simplre copia la ruta del add extensión y pegalo en la consola después de añadirle el wget, es decir: wget http://adds.firefox.com/estoesunejemplo.xpi .

Después verás como se van descargando los ficheros a tu carpeta local. Una vez descargada solo tendrás que descomprimir el xpi.

hablando de Licencias

La licencia Open más original TEHE BEER-WARE LICENSE!!

/*
* —————————————————————————-
* “THE BEER-WARE LICENSE” (Revision 42):
* wrote this file. As long as you retain this notice you
* can do whatever you want with this stuff. If we meet some day, and you think
* this stuff is worth it, you can buy me a beer in return Poul-Henning Kamp
* —————————————————————————-
*/

La paginación en codeigniter sin condiciones

El titulo quizás sea muy retórico para hablar de temas técnicos.  LLevo unos meses trabajando bastante con Codeigniter. Hasta ahora nos ha ido de lujo, pero de vez en cuando cojea, no todo puede ser perfecto. Nos hemos dado cuenta, dentro del equipo de desarrollo de Adlemons.com, que codeigniter, almenos con la versión que trabajamos, tiene serios problemas con la librería de paginación,  la cual no te permite combinar filtros en las búsquedas.

Nosotros hemos solucionado el problema con javascript, php y mucha imaginación, ya que  el entorno donde se originaba el problema permitía tomarse la licencia de pasarse la parte SEO por el arco del triunfo y hacerlo todo de forma dinámica con Objetos Ajax.

Hemos creado una librería apodada “paginations.php” ( muy originales teniendo en cuenta que la primitiva de codeigniter es pagination) que recoje unos parámetros, entre ellos el nombre de la función que actualiza el div con nueva página y la cual devuelve los links de pagination con el formato adecuado haciendo referencia a la función de javascript que actualiza el div del resultado de la búsqueda. Acontinuación voy a anotar como utilizamos la librería paginations.php:

Qué cambios se ha realizado en la librería pagination.php para llamarse paginations.php?
antes

$output .= $this->num_tag_open.'".$loop."".$this->num_tag_close;

después

$output .= $this->num_tag_open."base_url."('.$n.'); ">".$loop."".$this->num_tag_close;

El secreto reside en la lamada en el href del vinculo a la función javascript que refresca el DIV.

antes

$this->base_url = rtrim($this->base_url, '/') .'/';

después

$this->base_url = rtrim($this->base_url, '') .''; // evitas que ponga una barra invertida detrás

Así se utiliza:

1º introducimos los parámetros $this->load->library(‘paginations’);

$config['base_url'] = 'update'//es el nombre de la funcion javascript que llama

$config['total_rows'] = 'Numero de elementos a filtrar';

$config['per_page'] = 'elementos por páginas a mostrar';

$config['uri_segment'] = 'Segmento de la url que contiene el número de paginación';

$this->paginations->initialize($config); // Inicializamos

//Está función devuelve la cadena string con formato HTML con los elementos de la páginación << < 1 2 3 4 5 > >>

$parapasaravista=$this->paginations->create_links();

Y en la vista tengo una función, en este caso llamada ‘update’ , en ajax que refresca el DIV con los filtros creados.

El debate de Geonio.com

Siempre he querido colaborar en la comunidad Opensource, que tanto nos ha dado, con un pequeño grano de arena. Así que he decidido poner Geonio en licencia GPL.

Para comenzar en este proceso he decidido, empezar de cero otra vez, pero esta vez con un framework. Primero empece buscando por la red documentación para elegir el framework que necesitaba de acuerdo a las características de Geonio.com. Mi primera opción fue CakePHP, lo instalé comence a implementar código. Me convencio su gran comunidad de desarrolladores. Pero empeze a darme cuenta que el software era demasiado extenso y tienen tropecientasmil cosas potentes pero con procesos demasiado costosos. Así que alfinal me hice con codeigniter que es mucho más ligero y simple, permitiendote realizar cualquier tipo de desarrollo sin depender de él sistematicamente.

Acabo de empezar a reusar el código que tenia migrándolo a codeigniter, reusando vistas, modificando controladores y creando los modelos nuevos por cambios en E-R de la Mysql.

Si quereis tener acceso al código solo teneis que ir aquí. Pd: no os asusteis que está en fase ALPHA ;) .