lunes, septiembre 14, 2009

Nueva versión de FormPost 1.2

He cambiado en varios aspectos esta clase, ya que como saben, en producción surgen nuevos requerimientos e ideas. Las novedades son las siguientes:
  1. Aplica estilo a los elementos que se añaden a $requeridos si no pasan la validación. Automáticamente asigna un borde rojo al elemento, aunque se puede personalizar.
  2. Adicionalmente se incorpora aplicarEstiloError() para aplicar estilo de error. Este método es llamado automáticamente por validar2alert(), o también independientemente, según como se necesite
  3. Además el asignar estilo de error es independiente a los generadores de la clase, es decir, al hacer requerido un input que no fue generado por FormPost igual se le añadirá el estilo de error, ya que se puede agregar al validador pasando su nombre, pero debe tener por obligación su id; nombre=id
  4. Se puede diferenciar el fin del tag input para Doctype XHTML strict o transitional
  5. Incorporado un generador de textarea.
  6. Soporte para array de checks (elemento[]), es decir, checks que al ser enviados son índices de un array. Rescata y asigna valores asignados por usuario en form, así se evita que lo haga nuevamente.
  7. tabla2combo y array2combo soportan mutiselect (elemento[]). Rescata y asigna valores asignados por usuario en form, así se evita que lo haga nuevamente.
Descarga con ejemplos: FormPost y ejemplo
phpDoc: phpDoc con Doxygen

miércoles, agosto 26, 2009

Firefox: Personalizar url de búsqueda por barra de direcciones

Para hacer esto debes ir a about:config y buscar el parámetro keyword.URL.
En mi caso era para que pudiera elegir "buscar en Chile" y así no tener que ir a la página principal de google cada vez que quería limitar geográficamente mi búsqueda.

viernes, agosto 14, 2009

No se puede abrir el sitio de http://. Operación anulada.

Este problema hace varios días que me estaba molestando, buscando y buscando la manera de obviarlo, porque no quería hacer la recomendación que da Microsoft por el hecho que debo desarrollar los sitios compatibles con la mayoría del mercado y no todos hemos actualizado a IEfk8 por distintos motivos...

Este es el mensaje:



Bueno, luego de la trivial (y un poco estúpida creo) recomendación seguí investigando y ví que otra persona ya lo había hecho, aunque no vi una solución para mi caso.

Luego pensé en el problema y las causas, y recordé al fiel framework mootools, así que aquí mi fix, espero pueda encontrar una mejor:

El problema era que no podía agregar algunos javascript dentro de body que manejaran el dom, así que decidí probar con el domready de mootools y magia! santo remedio.
Por ahora me ahorrará tiempo mientas esperamos que la mayoría de los usuarios actualicen a IE8, o mejor aún se decidan a usar porfin Firefox!!

domingo, julio 19, 2009

No puedo setear o registrar variables de sesión antes de un header("Location: ...")

Uf!

Cuando hacemos esto:

session_name('mi_sesion');
session_start();
$_SESSION['miVar']="algo";
header("Location: url");

Nos pasa que las variables de sesión que están antes de header no se registran. Y bueno, como no me gusta tener que refactorizar todo el código para este tipo de #@#@ problemas que te quitan horas, preferí indagar (por la mismas horas creo :) pero es buena solución para el presente y el futuro, así reducimos la "deuda técnica" ;)) y la solución (como casi siempre) es muy simple!

Sólo debes agregar session_write_close() antes del header, y el codigo nos queda así:

session_name('mi_sesion');
session_start();
$_SESSION['miVar']="algo";
session_write_close();
header("Location: url");

y magia!!!

que fácil no!?

jueves, julio 16, 2009

Evitar reenviar formulario

Existen varios metodos: crear otro archivo distinto en donde está el form para analizar los datos, utilizar GET, utilizar javascript; pero el que más me acomoda es:

Utilizar header() al finalizar el codigo php que valida los datos del form, y no estás obligado a crear otro archivo.

Sólo debes agregar esta línea en tu archivo:

header("Location: ".$_SERVER['PHP_SELF']);

miércoles, julio 15, 2009

Eres un formateador empedernido?

Siempre que formateamos nuestro equipo, el trabajo de respaldar los archivos es tedioso y muchas veces nos olvidamos de algunos que eran importantes para vivir!!! -aunque pasan 2 semanas y te das cuenta que no eran tan importantes... :)-

Bueno en mi largo camino de transición entre windows y ubuntu -en la que finalmente opté por la segunda- uno de los problemas era respaldar los archivos que siempre utilizo:
  • Documentos
  • Perfil de Firefox
  • Marcadores
  • Mis proyectos web
  • etc.

Entonces he definido algunas reglas y utilizado unas herramientas que facilitan este trabajo:

  1. Particionar el disco en dos y en la partición esclava alojar todos mis archivos estáticos (documentos, música, etc.)
  2. Utilizar DropBox para respaldar información muy importante (por si el disco duro falla, por ejemplo)
  3. Utilizar el complemento para firefox FEBE para respadar mi perfil. Guarda todo hazta las cookies si deseas.
  4. Utilizar delicious y su complemento para mis marcadores (también pueden ser privados).
  5. Para mis proyectos utilizo OpenSVN. Además es una muy buena herramienta para la el seguimiento del proyecto a nivel de desarrollo.
  6. Utilizar herramientas de desarrollo multiplataforma, como netbeans por ejemplo.
  7. Para guardar mis contraseñas uso la extensión de Firefox laspass.
Lo único que no he buscado es uno para respaldar la configuración de un software determinado, que a veces es un arduo trabajo con alguno de ellos.

Si alguien tiene otra alternativa, o algo que agregar, bienvenido sea. :)

#TIPS
  • No olvidar quitar retirar autorización en iTunes
  • Exportar BD desde phpMyAdmin