October 18 2007

Wallpaper de la semana: SOS Female Members

Nueva entrega del wallpaper de la semana, está ocasión corresponde al cast femenino de Suzumiya Haruhi no Yutsu. Por cierto, ¿sabían que Haruhi los vigila?

Susumiya Wallpaper

Disclaimer: A menos que se indique lo contrario, la mayoría de los wallpapers aquí publicados han sido obtenidos de manera libre y gratuita, sin embargo, si tú eres el autor de uno de ellos, tienes forma de comprobarlo y no deseas que sea exhibido aquí, por favor hazlo saber al administrador de este blog / Most of the wallpapers here were obtained in free form, but if you are an author, have a way to prove it and don’t want to show your work here, please contact the admin.

October 16 2007

Curso de Ruby on Rails

Es para mí, un placer anunciarles el primer curso de Ruby que impartiré en este blog, por supuesto, el curso lo iré creando conforme vaya avanzando en mi aprendizaje en este peculiar lenguaje, así que esta al pendiente de cada entrega, el curso está disponible desde aquí o en los enlaces del lado derecho del blog.

October 12 2007

Perlas de sabíduria: Versiones desatendidas

la versión desatendida es cuando tú no tienes que estar sentado dándole click, yes, yes, abort, no, no, oh yeah! oh yeah! gimme more, more y etc.

October 11 2007

Verificando formularios de registro y comentarios en php

Disclaimer: Este es un artículo muy básico, por lo que algunos hardcore programadores y DJSOSO's podrían verlo como juegos de niños, si eres uno de esos, este artículo no es para tí.

Hoy les voy a explicar de una forma muy sencilla, una técnica que utilizan muchos sitios en sus formularios de registro y comentarios para evitar a los spam-bots y cosas similares. Se trata simplemente de obligar al usuario a digitar un número verificador de cuatro cifras generado aleatoriamente, así que, abrimos nuestro editor favorito, y vamos a crear una sencilla función.

PHP:
  1. <?php
  2.     function validador()
  3.     {
  4.         $num = rand(1000,9999);
  5.         return $num;
  6.     }
  7. ?>

Ahora, en cada formulario en el que vayamos a implementar esto, hemos de añadir un poco de código adicional, lo primero será, obviamente notificarle al usuario que tiene que escribir ese valor y de paso explicarle porque debe hacerle, pero también, usaremos un objeto tipo hidden para usarlo del otro lado del formulario. Veamos

PHP:
  1. <?php       
  2.         $n = validador(); //aquí llamamos a nuestra función, no te olvides de hacer el include correspondiente
  3.     echo "<input type='hidden' name='verifica' value='$n' />";
  4. ?>
  5. <p>Verificaci&oacute;n:<strong><?php echo $n ?></strong>. <small>Escriba este valor en la caja de texto</small>
  6. <input type="text" name="verifica_usuario" size="4" maxlength="4" /></p>

Ahora, del otro lado (es decir, cuando el formulario se procesa) simplemente revisamos que no haya quedado vacío el campo y que coincida con los dígitos generados (aquí es donde puedes pensar en AJAX si quieres).

PHP:
  1. <?php
  2. $v = true;
  3. if(strlen(trim($_POST["verifica_usuario"]))>0)
  4. {
  5.      if($_POST["verifica_usuario"]!=$_POST["verifica"])
  6.      {
  7.          $v = false;
  8.          echo "<p>Debe escribir el dígito verificador correcto.</p>";
  9.      }     
  10. }
  11. else
  12. {
  13.       $v = false;
  14.       echo "<p>Debe escribir el dígito verificador.</p>";
  15. }
  16. if($v)
  17. {
  18.      // Aquí se continua con el proceso
  19. }

Por supuesto, esto se puede implementar en un desarrollo propio o hacerle una modificación directa al formulario de comentarios de nuestro blog (sin necesidad de instalar un plug-in).

October 09 2007

Wallpaper de la semana: Beso anime

No todo es perversión en este blog, así­ que aquí­ les dejo este wall cute, porque tenemos para todo público
Beso Anime

Disclaimer: A menos que se indique lo contrario, la mayorí­a de los wallpapers aquí­ publicados han sido obtenidos de manera libre y gratuita, sin embargo, si tú eres el autor de uno de ellos, tienes forma de comprobarlo y no deseas que sea exhibido aquí­, por favor hazlo saber al administrador de este blog / Most of the wallpapers here were obtained in free form, but if you are an author, have a way to prove it and don't want to show your work here, please contact the admin.

October 09 2007

Aquí voy de nuevo

Octubre es un mes horrible para mí, mucho trabajo, aunado a mucho más trabajo y es cuando más descuido el blog (como ya se habrán dado cuenta), y luego de un atentado de cierta organización cuyo nombre no quiero decir (Juanito lo sabe y con eso es suficiente, tendré mi venganza!) solo quiero decir algunas cuantas cosas sobre la semana pasada (Si! otro ridiculo post sobre actualizaciones de la semana o I can't believe it, this is an another stupid post).

  1. La misma organización se robo mi receta del dulce momento. No puedo probarlo, pero este vehículo fue visto cerca de mi casa ese día.
  2. Mi boceto de Roy fue extraviado, así que volveré a comenzar, así que sigue sin haber comic en este blog (De paso Roy estará furioso)
  3. Usando mis 1337 m4d 5k1115 tengo un cliente nuevo en el bolsillo, Wii! yeah!
  4. RoR sigue apestando tanto como Koeth es pervertido
  5. Mis 1337 m4d 5k1115 fueron puestos a prueba de nuevo y tuve que restaurar un servidor usando partes de todo lo que pude, McGiver estará orgullo de mí. Lo que me valió además, un potencial cliente nuevo (aunque no está asegurado)
  6. Fue a hacerme la revisión de los 30,000 KM y ahora entiendo más a detalle porque el Seguro Social está en quiebra y decadencia, ¡tomar la temperatura y medir la presión no es lo único que incluye una revisión médica general que lo sepan, so enfermeras!
  7. Descubrí que Tonterías, es la tercera palabra más buscada en mi blog, lo bien que me conocen mis usuarios! juas!

NOTA: Se restauran servidores a domicilio.

October 04 2007

Crontab en 10 minutos

Crontab es una herramienta indispensable para el administrador de sistemas, su principal función, radica en la automatización de tareas dentro de nuestro servidor. Pues bien, después de algún tiempo de tener abandonado este blog, hoy voy a hablar de ello. Lo primero que vamos a hacer es ver que tareas tenemos en el crontab, para ello

crontab -l

Nos mostrará la lista de tareas especificadas en el crontab, es posible que veamos una lista como está:

5 0 * * * tar czf * respaldo

Ahora, analizando está línea encontramos 6 elementos puestos en el orden que sigue:

  1. Minuto: Es el minuto exacto en el que quieres que se ejecute la tarea
  2. Hora: La hora exacta en formato de 24 horas
  3. Día: Valor numérico del día del mes
  4. Mes: Valor numérico del mes
  5. Semana: Valor numérico del día de la semana
  6. Usuario: usuario que ejecuta el comando, sino se pone, se usa root por defecto
  7. Comando: comando a lanzar

Por ejemplo, supongamos que queremos lanzar un proceso a las 12 de la noche de cada sábado que empaquete el contenido de la carpeta de algún proyecto y nos lo envié por correo, sería algo como esto:


0 0 * * 6 tar -cvf proyecto.tar /home/elusuario/proyecto
5 0 * * 6 mail elusuario@porahi.com -s Respaldo -a /home/elusuario/proyecto.tar

Noten que estoy corriendo el proceso como root, los asteriscos se usaran cuando no queremos especificar un parámetro, por supuesto el comando es obligatorio. Ahora que ya tenemos nuestra línea construida, es hora de meterla el contrab, para ello tecleamos:

crontab -e

Y se nos abre una ventana con el editor por defecto (casi siempre vi o vim), estás son algunas reglas básicas de sobrevivencia en vi y derivados para los que se pierdan.

  • i - insertar
  • Tecla insert - presionada una vez entramos a modo de reemplazo, presionada de nuevo, regresamos al modo de insertar
  • Esc - Salimos del modo de inserción y entramos al modo comando
  • :w - Guarda los cambios
  • :q - Sale sin guardar
  • :wq - Sale y guarda cambios

October 04 2007

Wallpaper de la semana: Amy Weber

Pues ya va siendo tiempo del wallpaper de la semana, en está ocasión tenemos...

Amy Weber

Disclaimer: A menos que se indique lo contrario, la mayoría de los wallpapers aquí publicados han sido obtenidos de manera libre y gratuita, sin embargo, si tú eres el autor de uno de ellos, tienes forma de comprobarlo y no deseas que sea exhibido aquí, por favor hazlo saber al administrador de este blog / Most of the wallpapers here were obtained in free form, but if you are an author, have a way to prove it and don't want to show your work here, please contact the admin.

October 02 2007

Nintendo ofrece un protector gratuito para el Wiimote

Nintendo ofrece a sus clientes, la posibilidad de adquirir de manera gratuita una funda protectora para su wiimote, mismo que será incluido de manera gratuita en los siguientes embarques de la famosa consola, esto debido a diversos reportes y quejas. Aplica por supuesto:

For Wii owners who purchased their systems prior to this addition, we are offering to send free Wii Remote Jackets for their existing Wii Remotes

RSS