Mostrando entradas con la etiqueta desarrollo web. Mostrar todas las entradas
Mostrando entradas con la etiqueta desarrollo web. Mostrar todas las entradas

viernes, 15 de enero de 2010

El protocolo Bayeux - HTTP Streaming

Bien, vamos un paso más allá de AJAX, y pasamos a COMET o HTTP Streaming.
Estamos acostumbrados a enviar mensajes de cliente hacia servidor. Lo básico es enviar un POST o GET request mediante un click y recargar toda la página, pero con AJAX podemos cargar mensajes e incrustarlos en nuestra página sin recargarla. Ahora bien, si el estado del servidor es muy variable y no queremos esperar a una petición de cliente, ¿que hacemos?
La solución es utilizar una conexion HTTP de larga duración que mande mensajes de vuelta cuando lo necesitemos.

Existe una comunidad que se dedica a promover ésta tecnología (soporte nativo en FLEX) en todos los entornos posibles.

El protocolo Bayeux se puede consultar aquí
La arquitectura Comet aquí
Y aquí podremos ver como va madurando ésta tecnología.

Mi idea es utilizar dicha tecnología en el desarrollo de mi proyecto, y de paso aprender a implementarla en PHP.

sábado, 28 de febrero de 2009

Trabajando con ficheros CSV y PHP

A menudo necesitamos importar datos CSV en PHP. Para ello tenemos varias alternativas. La de más bajo nivel es usar fgetcsv()

$row = 1;
$handle = fopen("test.csv", "r");
while ((
$data = fgetcsv($handle, 1000, ",")) !== FALSE) {
$num = count($data);
echo
"

$num fields in line $row:

\n"
;
$row++;
for (
$c=0; $c < $num; $c++) {
echo
$data[$c] . "
\n"
;
}
}
fclose($handle);
?>

Otra alternativa es utilizar una libreria como Parse CSV.

Saludos.

jueves, 27 de noviembre de 2008

Preparando CodeIgniter en nuestro servidor

CodeIgniter es un framework para desarrollar aplicaciones PHP siguiendo el patrón MVC. Os recomiendo también que leáis la entrada que dediqué al framework de Zend.

He preparado mi portátil con Xampp y sobre Ubuntu 8.04 con la siguiente estructura de directorios

-htdocs/
-CodeIgniter/
-system/
-application/
-sample_app/
-config/
-models
-controllers
-views
-helpers
-libraries
-(etc...)
-sample_app2/
-(misma estructura de aplicacion)
-codeigniter/
-CodeIgniter.php
-(etc...)
-user_guide/
-sample_app/
-index.php (front controller)
-sample_app2/
-index.php (front controller)
-xampp/


Pongo especial atención a la estructura de directorios puesto que es muy importante organizar correctamente los ficheros sobretodo si queremos reutilizar librerias en diversas aplicaciones y utilizar hosts virtuales.

En mi caso, utilizo VirtualHosts, por tanto hay que añadir una entrada o varias al fichero /etc/hosts con el nuevo nombre de dominio y habilitar en httpd.conf el módulo vhosts con la siguiente linea:
Include etc/extra/httpd-vhosts.conf

A continuación hay que configurar el fichero httpd-vhosts.conf para que reconozca las diferentes aplicaciones y envíe las peticiones a los front-controllers que toque de la siguiente manera...

<VirtualHost *:80>
ServerName ci
ServerAdmin webmaster@localhost
DocumentRoot /opt/lampp/htdocs/CodeIgniter/
ErrorLog logs/ci-error_log
CustomLog logs/ci-access_log common
<Directory /opt/lampp/htdocs/CodeIgniter/default/>
RewriteEngine On
RewriteBase /default
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L]
</Directory>
<Directory /opt/lampp/htdocs/CodeIgniter/sample/>
RewriteEngine On
RewriteBase /sample
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L]
</Directory>
</VirtualHost>


La parte de servidor ya está configurada, ahora nos faltará editar los front-controllers añadiendo los paths adecuados hacia los directorios system y application.

Y ya podemos comenzar a trastear con el framework :)

Si te ha sido de utilidad puedes agradecermelo pulsando sobre la publicidad del blog, gracias :)

viernes, 14 de noviembre de 2008

Guía rápida de instalación de osComerce

Buenas,
Vamos a instalar en fácilmente osComerce, una aplicación web en entorno LAMP (Yo en particular, lo he instalado sobre Ubuntu 8.04 y con ayuda del paquete XAMPP)

Supondré que ya tenemos nuestro servidor web instalado así como el gestor de base de datos MySQL y el módulo PHP correctamente configurado.
* Podéis consultar éste artículo para tener una idea de que programas tener en vuestra estación de trabajo
* Para instalar Apache, PHP y MySQL podeis probar XAMPP o AppServ

1. Descargaremos el paquete (pulsa aquí) y descomprimiremos el zip.
2. Copiaremos el directorio "catalog" en "htdocs" (quizás sea útil revisar éste articulo sobre hosts virtuales)
3. Iremos a nuestro navegador --> http://localhost/catalog y seguiremos los pasos.
Es un proceso de instalación guiado por lo que no tiene misterio. Eso sí, hay que asegurarse de cumplir los requisitos que te piden, dar permisos "chmod 777" a los ficheros de configuración y crear una base de datos vacía para luego especificar el nombre en el proceso de instalación.
4. Una vez finalizada la instalación hay que volver a dar los permisos adecuados a los ficheros de configuración (por ejemplo chmod 644) y eliminar el directorio "install".