miércoles, 31 de agosto de 2011

Impresora HP C3180 imprime siempre al iniciar página de prueba

Hola a todos, nuevamente aquí dejando un aporte de lo que voy aprendiendo. El día 30 de agosto de 2011 un amigo me pidió de favor que le ayudará con su multifuncional de marca HP C3180, porque ésta al iniciar siempre imprimía una página de prueba, esto hacía que se desperdicie tinta del cartucho.

Bueno tengo tres soluciones que intenté de las cuales sólo funcionó la última, pero puede ser que al leer las soluciones les funcione a ustedes alguna de las dos primeras.

1) Al iniciar cuando la multifuncional imprima la página de prueba, colocar en el scanner la hoja impresa y escanearla, de esta forma los cartuchos de tinta de la multifuncional quedarán calibrados y el proceso no volverá a repetirse (información vista en múltiples foros, pero a mi no me resultó). La acción de escanear ayuda a calibrar los cartuchos de tinta.

2) Limpiar los cartuchos de tinta con un isopo y alcohol, para que puedan realizar una conexión satisfactoria de los pines de los cartuchos con los de la impresora, si no se realiza ello es muy posible que por la tinta que botan los cartuchos no se este realizando un buen contacto.

3) Comprar cartuchos nuevos de tinta, este ya es el último paso a mi desesperada búsqueda de la solución al problema. Es muy probable que la segunda solución no haya funcionado porque los pines de los cartuchos estaban desgastado y no hacian un buen contacnto con la multifuncional.

Saludos y hasta la proxima.

domingo, 7 de agosto de 2011

Manejo de excepciones en PHP

Como todos ya sabemos el manejo de excepciones es vital al momento de validar un sistema, y mucho más en el caso de sistemas web.

Pues como sabemos, PHP es un lenguaje de programación orientado a web. Éste realiza el manejo de excepciones, aunque no al mismo nivel de otros lenguajes de programación,  JAVA por ejemplo.

PHP trae consigo una clase general para todas las excepciones, que para los programadores como yo, que venimos desarrollando en este lenguaje de programación web nos viene de maravilla.

Colocaré una porción de código para hacer la explicación un poco más amena y se entienda a detalle la descripción de la clase.

Nombre de la clase en PHP: Exception
Nombre del archivo: ejemploDivision.php

1) La forma que todos de seguro creerán que se podrá controlar una excepción en PHP, es lo normal si el programador viene de conocimientos como JAVA.


Pues NO, así no se debe controlar una expceción, en PHP esto simplemente es un error y efectivamente asi nos lo muestra cuando ejecutamos nuestro código (Observen en la siguiente imagen). PHP 5 ya trae manejo de excepciones pero la mayoría de funciones de PHP producen errores en vez de excepciones (Buff, bueno no nos queda mas que adaptarnos, total es libre)

2) La forma de programar para que verdaderamente coja la excepción es crear nosotros mismos una función que lance la excepción a partir del error encontrado.




Veamos los resultados.


Explicare mas a detalle que pasa.

set_error_handler("captura_excepciones"): Captura los errores automáticamente y los envía a la función que nosotros hemos creado, en el caso de este ejemplo captura_excepciones. Una vez dentro de nuestra función creada lanzaremos la excepción con la sentencia throw.

$e->getMessage(): Nos devuelve el mensaje que lanzamos en el throw.

Existen otras sentencias que podemos utilizar para ayudarnos:
$e->getCode(): Nos devuelve el código de la excepción
$e->getLine(): Nos devuelve en que línea se ha producido la excepción.
$e->getFile(): Nos devuelve el archivo donde se ha lanzado la excepción.

Espero haya servido de ayuda este ejemplo básico, prueben esto en sus PCs.

Dejo un ejemplo más avanzado que lo pueden descargar de aquí

Saludos y hasta la proxima

Carlos Zacarías.