30 componentes y clases PHP muy útiles 0

PHP es uno de los lenguajes de programación mas potentes en Internet y es prácticamente imposible conocer todo acerca de un lenguaje de programación, por lo mismo siempre es útil conocer esos componentes y clases PHP que nos pueden ser muy útiles en algún momento.

Andres de anieto2k a recopilado una excelente lista de componentes y clases PHP, están divididas en las siguientes categorías:

  • Bases de datos
  • Desarrollo
  • Test unitario
  • Debug
  • Despliegue
  • Seguridad
  • E-Mail
  • Autentificación de Usuarios
  • XML y PHP
  • Manipulación de Imágenes
  • Gráficos y tablas
  • Motor de plantillas
  • Documentos

Enlace: 30 componentes y clases PHP muy útiles

Encoder MD5 2

md5 Encoder

MD5 (acrónimo de Message-Digest Algorithm 5, Algoritmo de Resumen del Mensaje 5) es un algoritmo de reducción criptográfico de 128 bits ampliamente utilizado en aplicaciones generalmente para encriptar contraseñas, hasta hace un tiempo no habia forma de desencriptar este algoritmo sin embargo nada es imposible:

Wikipedia

A pesar de haber sido considerado criptográficamente seguro en un principio, ciertas investigaciones han revelado vulnerabilidades que hacen cuestionable el uso futuro del MD5. En agosto del 2004, Xiaoyun Wang, Dengguo Feng, Xuejia Lai y Hongbo Yu anunciaron el descubrimiento de colisiones de hash para MD5. Su ataque se consumó en una hora de cálculo con un clúster IBM P690.

Aunque dicho ataque era analítico, el tamaño del hash (128 bits) es lo suficientemente pequeño como para que resulte vulnerable frente a ataques de ‘fuerza bruta’ tipo ‘cumpleaños’ (Ataque de cumpleaños). El proyecto de computación distribuida MD5CRK arrancó en marzo del 2004 con el propósito de demostrar que MD5 es inseguro frente a uno de tales ataques, aunque acabó poco después del aviso de la publicación de la vulnerabilidad del equipo de Wang.

Debido al descubrimiento de métodos sencillos para generar colisiones de hash, muchos investigadores recomiendan su sustitución por algoritmos alternativos tales como SHA-1 o RIPEMD-160.

 

Sin embargo aun sigue siendo un algoritmo confiable y muy popular esta puede ser una contra.

Pero una pregunta ¿Alguna ves se te ha olvido la contraseña de la administracion de tu CMS o Blog?

Pues bueno si aun recuerdas la contraseña del panel de tu hosting y tiene acceso a tu base de datos mediante un manejador (phpMyAdmin) o SSH, o tienes la posibilidad de ejecutar una consulta SQL, todo esto para resetear tu contraseña.

Solo necesitas saber donde se guarda la contraseña de tu cuenta posteriormente editar el campo, PERO no podras escribir “123456″ porque la mayoria de los sistemas al momento de hacer el login hacer ciertas acciones por las cuales lo guardado en ese campo debe ser un String encriptado con el MD5.

Para eso esta la siguiente pagina que les devuelve en cosa de segundos el texto introducido en el input pero encriptado con el algortimo MD5.

Mas que util, al menos a mi me a salvado muchas veces y es muy sencillo.

Visitar pagina The MD5 Encoder

PHP: Ordenar arrays multidimesionales segun un valor 2

Hace unas semanas en el sitio de ldu.com.ec me solicitaron realizar un listado de los goleadores del equipo, pero guardar datos de dos fases la actual y la previa y segun la suma de las fases ordenar el ranking, sin embargo los datos se guarban en un archivo xml y pues primero tenia que parsearlo y pasar uno a uno los jugadores para sacar cuantos goles llevaban sumados y pues el sistema es un formulario muy simple y pues el editor podria insertar la informacion en orden y listo, pero…. que pasaria si el editor no los ordena? el ranking ya no seria un ranking seria una simple lista cosa que en un portal deportivo no da muchas informacion.

Asi que a raiz de que en ese momento mi internet esta hecho una mi@$#a pues me saque un algoritmo y saque el siguiente codigo el cual es para usarlo en joomla sin embargo con unas pequeñas modificaciones podrian pasar cualquier array.

$nparams = new mosParameters( $list );

$nums = 14;

$jugador = array();

$goles = array();

$first = array();

$second = array();

for($i=0;$i<$nums;$i++){

if(trim( $nparams->get('jugador'.$i)) != ""){

$gol = intval($nparams->get('goles'.$i)) + intval($nparams->get('l0goles'.$i));

$goles[$i] = $gol;

$first[$i] = intval($nparams->get(’goles’.$i));

$second[$i] = intval($nparams->get(’l0goles’.$i));

$jugador[$i] = stripslashes( $nparams->get(’jugador’.$i));

$a = $i - 1;

if($gol > $goles[$a]){

while(($gol > $goles[$a]) AND ($a >= 0)){

$jugador[$a + 1] = $jugador[$a];

$first[$a + 1] = $first[$a];

$second[$a + 1] = $second[$a];

$goles[$a + 1] = $goles[$a];

$goles[$a] = intval($nparams->get(’goles’.$i)) + intval($nparams->get(’l0goles’.$i));

$first[$a] = intval($nparams->get(’goles’.$i));

$second[$a] = intval($nparams->get(’l0goles’.$i));

$jugador[$a] = stripslashes( $nparams->get(’jugador’.$i));

$a = $a - 1;

}

}

$tnums++;

}

}

Si se fijan el while es el que se encarga de re-ordenar el valor goles si el gol anterior es menor al actual.

[Video] (PHP & .Net) vs. Ruby and Rails 3

Recuerdan los comerciales Windows vs. Mac, aquellas parodias muy bien realizadas que se volvieron muy famosas y podias ver en todos los blogs hasta cansarte.

Pues bueno ahora viene otra parodia ahora Gregg Pollack y Jason Seifer de railsenvy.com se han hecho algunos videos muy buenos el primero es PHP vs. Ruby and Rails:


Lo mejor “can you signed for my. . . . . .php my greatest fan” jajaja

Ahora .Net vs. Ruby and Rails


En este enlace podras ver mas comerciales de Ruby and Rails

9 tips para consultas MySQL 1

sql injection

MySQL es de las bases de datos mas utilizadas en ambientes web aunque hay otras mas livianas pero sigue siendo segura y robusta, pero la utilizamos a su maximo potencial no lo creo, tiene tantas utilidades que no conocemos y nos la arreglamos usan el lenguaje que manejemos atras ya sea php u otro, pero bueno aqui les van 10 tips que considero utiles para sus consultas:

  • 1.- Condicionales IF:

SELECT IF(tipodeauto = 1, marca_auto, marca_moto) as marca FROM table WHERE color=”rojo” LIMIT 1;

Esto imprimiria como valor de marca, la marca del auto si tipodeauto fuera igual a 1 si no en marca imprimiria la marca de una moto.

  • 2.- Operaciones matematicas:

SELECT SUM(subtotal) as gSubtotal FROM cantidades;

Esta consulta sumaria todos los subtotales de campo (subtotal) de todos los registros de la tabla cantidades y las imprimiria en gSubtotal.

SELECT (subtotal * .15) as Iva FROM cantidades WHERE articulo=’ipod’ LIMIT 1;

Esto multiplicaria el subtotal por .15 del registro que pertenesca al articulo ipod devolviendo el iva en la variable con nombre Iva.

  • 3.- Consultas multiples:

SELECT t1.*, t2.nombre, t2.modelo FROM table1 t1 LEFT OUTER JOIN table2 t2 ON t2.marca_moto=t1.marca_auto WHERE t1.color=”azul”;

Esta consulta llamaria a los registros de dos tablas diferentes table1 y table2 y haria lo siguiente, pediria los datos de la tabla table1 cuando color sea azul y pediria los datos de la tabla table2 donde coincidan las marcas, pero de table1 (t1) imprimiria todos los campos y de table2 (t2) solo imprimiria el nombre y el modelo.

  • 4.-Formato de cantidades:

SELECT FORMAT(totales, 2) as total FROM cantidades;

Esta consulta es algo asi imaginense que los valores del campo totales es asi 456781.3445 como veran no tiene separador de miles ni de decimales.

Al aplicarle el FOTMAT(totales, 2) nos imprimiria 456781.3445 > 456,781.34

Leer el post completo…

15 herramientas para evitar SQL Injection 1

sql injection

Que es SQL Injection (Inyeccion de SQL) ?

Resumido y una forma de aprovechar vulnerabilidades (descuidos del desarrollador) en las consultas a bases de datos SQL (MySQL, SQLLite, etc…) mas informacion.

En Security-Hacks, han publicado una lista de herramientas destinadas a encontrar y explotar vulnerabilidades de inyección de SQL.

  1. SQLIer
  2. SQLbftools
  3. SQL Injection Brute-forcer
  4. SQLBrute
  5. BobCat
  6. SQLMap
  7. Absinthe
  8. SQL Injection Pen-testing Tool
  9. SQID
  10. Blind SQL Injection Perl Tool
  11. SQL Power Injector
  12. FJ-Injector Framwork
  13. SQLNinja
  14. Automagic SQL Injector
  15. NGSS SQL Injector

Para evitar este tipo de ataques se debe hacer uso de consultas parametrizadas o funciones que el lenguaje de programación provea para este fin, en lo posible no debemos reinventar la rueda y hacer funciones que algunas veces no sirven de nada.

P.D. cuiden mucho sus consultas y las comillas como las usan en las mismas.

Via Mundo Informatico (jorgesaavedra [at wp])

  • Liquid Web, Heroic Support
  • Contrata tu banner 125x125
  • Contrata tu banner 125x125
suscribete via RSS suscribete via Correo Electronico

12,000 iconos gratis

Este paquete de iconos tenia tiempo con ganas de compartir son todos los icono...

36 diseños de tarjetas de presentación muy creativas

Que te parecen estas tarjetas si quieres ver las otras sigue el enlace par...

Diseños de tatuajes

Para los que anden buscando tatuajes para marcar su piel, aqui les dejo una fuen...

Google

Web www.frogx3.com