martes, 30 de noviembre de 2010

Refrán - Aldous Huxley

La experiencia no es lo que sucede a un hombre. Es lo que un hombre hace con lo que le pasa.



domingo, 28 de noviembre de 2010

Instalar Symfony Windows - sin pear

Lo primero que tenemos que hacer es

Instalar XAMPP para Windows


http://www.apachefriends.org/en/xampp-windows.html

Dejamos todo por defecto, la instalacion abrira una consola del sistema dejamos todas las opciones por defecto.

Una ves instalado tenemos que Vincular PHP a la consola del sistema de Windows.

Windows XP , con click derecho en Mi Pc y luego a Propiedades, llegaron al lugar.
Windows Vista y 7, lo mismo pero no llegan a donde es, esto les abrirá una ventana y le dan clic a  ADVANCED SYSTEM SETTINGS.


Una ves que nos encontremos en System Properties, Vamos a la pestaña Advances y luego a Enviroment Variables.

Colocamos una ruta  mas en Path:

  • Doble click en la variable Path 

  • Agregamos el camino a la carpeta php del XAMPP

Creamos una nueva variable llamada php:
  • Click en nuevo
  • la llamamos php y le damos el camino a el ejecutable php.exe

Ahora probemos si php sirve en la consola con el comando php -v que nos dirá que versión esta instalada.



Una ves que veamos que ya nuestra consola puede ejecutar comando php, vamos a pasar la prueba de fuego, bajamos Symfony de la pagina http://www.symfony-project.org/installation yo baje la versión SOURCE 1.4.8 anexo el link http://www.symfony-project.org/get/symfony-1.4.8.zip

Lo descomprimimos Symfony en una carpeta, yo la descomprimí en la misma carpeta publica del XAMP pero se aconseja no hacerlo por medidas de seguridad, pero como trabajaremos de manera local y luego se exporta a producción no creo que tengamos problemas.

Una ves que descomprimimos la carpeta navegamos a ella por la consola.


Una ves en la carpeta bin de symfony ejecutamos php check_configuration.php


Vemos que tenemos 2 Warnings, el cual esta muy bien porque ninguno de los 2 nos perjudica cuando programemos ya que no son de mucha importancia.

posix_isatty( ) por ahora no se puede resolver en el entorno Windows. Si alguien sabe como instalarlo, bienvenido sea el comentario, en LINUX se puede resolver.

El Segundo Warning si lo podemos quitar solo tenemos que descomentar  php_apc.dll en el PHP.INI en la carpeta C:\xampp\php, solo le quitamos el ; para poder dejar libre el dll para su ejecucion


También debemos des comentar los PDO de base de datos y el manejador de base de datos en este caso, nosotros usamos postgres




Salvamos el php.ini y volvemos a ejecutar el comando php check_configuration.php




Felicidades hemos instalado SYMFONY EN WINDOWS

martes, 2 de noviembre de 2010

Refrán - Peter Drucker

La mejor organización no asegura los resultados. Pero una estructura equivocada sería garantía de fracaso.



Instalar Symfony Linux

Crear un proyecto Symfony 1.4

  • Tener apache instalado:
Verificamos si tenemos apache instalado:

sudo /etc/init.d/apache2 start

Si esto no existe  entonces no tienes apache instalado y lo instalamos con el siguiente comando:

sudo apt-get install apache2

y volvemos a intentar el comando anterior:

sudo /etc/init.d/apache2 start
  • Tener php 5.2.4 o mejor
Verificamos si ya tenemos PHP instalado, por la consola colocamos:

php -v

si ese comando nos responde, buenisimo, tenemos PHP instalado solo tenemos que verificar que la versión sea mayor o igual a 5.2.4.

Si no lo tenemos instalado lo instalamos con

sudo apt-get install php5

sudo apt-get install php5-cli

sudo apt-get install php5-dev

sudo apt-get install php5-common



sudo apt-get install php5-xsl

sudo apt-get install libapache2-mod-php5

sudo apt-get install php-pear

sudo apt-get install php-apc



y luego ejecutamos el comando anterior:

php -v
  • Instalamos algún tipo de Base de datos
PostgreSQL

sudo apt-get install postgresSQL-version  (la version que desee my postgreSQL is 8.4)
sudo apt-get instal php5-pgsql (para que php pueda manejar esta base de datos)

MySQL

sudo apt-get install mysql  (la version que desee)
sudo apt-get instal php5-mysql (para que php pueda manejar esta base de datos)

etc.

  • Descargamos Symfony

NOTA: siempre es recomendable que en un desarrollo no se coloque el workspace dentro del www publico del apache es preferible crear un VIRTUAL HOST, que apunte a nuestra carpeta workspace y sea local, si es de ser necesario un acceso remoto configurarlo en nuestro VIRTUAL HOST y le damos acceso a quien nosotros queramos.


  • Crear el Workspace
Crearemos el mismo workspace que el tutorial de Symfony para Jobeet:

mkdir -p /DIRECCIÓN DONDE VAS A TRABAJAR/sfprojects/jobeet

mkdir crea una carpeta pero cuando queremos crear varias carpetas existan o no usamos -p

  • Creamos donde vamos a Instalar Symfony
Nos paramos en jobeet y escribimos el siguiente comando:

mkdir -p lib/vendor

ahora tenemos esta estructura:

sfprojects
     -  jobeet
             -  lib
                  - vendor

Nos mudamos a vendor y movemos el TGZ de symfony a la misma carpeta y ejecutamos:

cd lib/vendor (Nos paramos en la carpeta Vendor)

tar zxvf symfony-1.4.0.tgz  (esto symfony-1.4.0.tgz Cambia de acuerdo a la versión que descargaste)

mv symfony-1.4.0 symfony  (Renombrar la carpeta descomprimida)

rm symfony-1.4.0.tgz (Eliminamos el archivo comprimido ya que no lo necesitaremos mas)

  • Nos salimos a la carpeta Jobeet
Si estamos parados en vendor hacemos

cd .. 

cd ..

ya estamos en Jobbet
  • verificamos que Symfony funciona sacando una leyenda de ayuda
php lib/vendor/symfony/data/bin/symfony -v
  • Creando el proyecto en Symfomy  (estamos parados en la carpeta Jobeet)
Aquí tenemos que tomar una decisión la cual es en que ORM vamos a trabajar PROPEL o DOCTRINE 

DOCTRINE ( viene por defecto por lo tanto el comando es )

php lib/vendor/symfony/data/bin/symfony generate:project jobeet


PROPEL ( viene por defecto por lo tanto el comando es )

php lib/vendor/symfony/data/bin/symfony generate:project jobeet --orm=Propel


Ambos comandos nos crearan las carpetas

     apps/
     cache/
     config/
     lib/
     log/
     plugins/
     test/
     web/

Ya no necesitamos acceder a symfony con esta dirección lib/vendor/symfony/data/bin/symfony ahora tenemos en la carpeta jobeet un archivo symfony que nos permitirá ejecutar comandos parados desde jobeet. 

Ya veremos unos ejemplos a continuación.


  • Creamos nuestro Front End y Back End (seguimos parados en la carpeta jobeet)
Front End: es la parte visible a internet para todos los usuarios que puedas llevar a tu pagina.

php symfony generate:app frontend

Back End: es la zona administrativa, o simplemente algo que necesite de un acceso restringido para hacer algo.

php symfony generate:app backend

  • Ahora la prueba de fuego CHEQUEAR SI TODO ESTA BIEN INSTALADO ( en la carpeta Jobeet)
php lib/vendor/symfony/data/bin/check_configuration.php

Esperamos este resultado

********************************
*                                                            *
*  symfony requirements check             *
*                                                            *
********************************
php.ini used by PHP: /etc/php5/cli/php.ini

** WARNING **
*  The PHP CLI can use a different php.ini file
*  than the one used with your web server.
*  If this is the case, please launch this
*  utility from your web server.
** WARNING **

** Mandatory requirements **

  OK        PHP version is at least 5.2.4 (5.3.2-1ubuntu4.5)

** Optional checks **

  OK        PDO is installed
  OK        PDO has some drivers installed: pgsql
  OK        PHP-XML module is installed
  OK        XSL module is installed
  OK        The token_get_all() function is available
  OK        The mb_strlen() function is available
  OK        The iconv() function is available
  OK        The utf8_decode() is available
  OK        The posix_isatty() is available
  OK        A PHP accelerator is installed
  OK        php.ini has short_open_tag set to off
  OK        php.ini has magic_quotes_gpc set to off
  OK        php.ini has register_globals set to off
  OK        php.ini has session.auto_start set to off
  OK        PHP version is not 5.2.9


NOTA: si algo dice  WARNING lo mas probable explique que falta instalar.


FELICIDADES HAS INSTALADO SYMFONY


Ahora hacer los tutoriales de Symfony