Firma dinámica [Castg] - Depurado

Iniciado por Castg!, 11 Marzo 2012, 08:40 AM

0 Miembros y 1 Visitante están viendo este tema.

Castg!

Estaba (sigo estando) muy aburrido, me puse a navegar por el foro en mis viejos mensajes, y encontre el tema sobre la firma dinamica que habia hecho hace ya un par de años. En ese entonces yo pensaba sobre la programación de forma muy distinta.

Con esto no quiero decir que ahora soy un super programador de ASM, sino que leí mucho más de programación y depuración (No mucho igual :D) y arregle un poco el código para que quede más bonito y no tarde tanto en cargar. Además, estuve mucho tiempo ausente en el foro, y agregaron un botón de Google Plus y tuve que modificar la expresión regular.

Asi que puse manos a la obra y reactive mi vieja firma que tenía bastante empolvada.

Acá les dejo el código como siempre por cualquier interesado, los datos de imagen de fondo y tipografía utilizada estan en el post que nombré con anterioridad.

Principalmente cambié los formatos de imágenes, antes usaba PNG y tardaba muchisimo, ahora con estos cambios, en vez de recibir un PNG de 51KB, es un JPEG de 15KB con una resolución media, lo suficientemente agradable a los ojos.

Acá el código:

Código (php) [Seleccionar]
<?php
error_reporting
(0);
header('Content-type: image/jpeg');
if(!empty(
$_COOKIE['firmaid'])){
$id=$_COOKIE['firmaid'];
}else{
$post preg_match('/^.+<td align="center" class="smalltext"><g\:plusone size="small"><\/g\:plusone><a href="http\:\/\/foro\.elhacker\.net\/profiles\/([a-z0-9]+\-u([0-9]+)).html".+/'str_replace("\n" ''file_get_contents(getenv('HTTP_REFERER'))), $res);
$id=(count($res)>=3)?$res[2]:false;
}
$perfil file_get_contents('http://foro.elhacker.net/index.php?&action=.xml;sa=profile;u='.$id);
$perfil preg_replace('/[\n\t\r]+/' ''$perfil);
$nick preg_replace('/.*<name><!\[CDATA\[(.*)\]\]><\/name>.*/''Hola $1!'$perfil);
$lugar preg_replace('/.*<location><!\[CDATA\[(.*)\]\]><\/location>.*/''Sos de $1.'$perfil);
$edad preg_replace('/.*<age>(.*)<\/age>.*/''Tenes $1 años.'$perfil);
$posts preg_replace('/.*<posts>(.*)<\/posts>.*/''Escribiste $1 posts.'$perfil);
$userAgentstrtolower($_SERVER['HTTP_USER_AGENT']);
$navegador preg_replace('/.*(firefox|msie|opera|netscape|safari|chrome|epiphany|galeon|iceape|icewease|kazehakasel|konqueror|minefield|seamonkey|shiretoko|avant|lock|k\-meleon|minefield|navigator).*/''$1'$userAgent);
$sistema preg_replace('/.*(windows|mac|linux).*/''$1'$userAgent);
$agent = ($navegador!=$userAgent && $sistema!=$userAgent) ? "Usas $navegador desde $sistema." '';
if(
$lugar==$perfil){ $lugar 'Ubicacion no definida'; }
if(
$edad==$perfil){ $edad 'Edad no definida'; }
if(
$nick!=$perfil){
if(empty($_COOKIE['id'])){ setcookie('firma',$id,time()+315360000); }
$mensaje "$nick\n\n  $posts\n  $lugar\n  $edad\n  Tu ip es {$_SERVER['REMOTE_ADDR']}.\n  $agent";
}else{
$mensaje "    Tu ip es: {$_SERVER['REMOTE_ADDR']}\n\n  Para descubrir más de mis\npoderes, mirame en un post\ndonde Castg! comente." ;
}
$im imagecreatefromjpeg('firma-perfil.jpg');
$blanco imagecolorallocate($im255,255,255);
$negro imagecolorallocate($im0,0,0);
$fuente './persansb.ttf';
$puntosTexto imagettfbbox(120$fuente$mensaje);
$tamanioTexto = array();
$tamanioTexto['x'] = $puntosTexto[2] - $puntosTexto[6];
$tamanioTexto['y'] = $puntosTexto[3] - $puntosTexto[7];
$xtexto = (imagesx($im) - $tamanioTexto['x']) / ;
$ytexto = ((imagesy($im) - $tamanioTexto['y']) / 2) + imagefontheight($fuente) ;
imagettftext($im120$xtexto$ytexto$blanco$fuente$mensaje);
imagejpeg($im,NULL,90);
imagedestroy($im);
?>



Nos vimos!

Og.

Que tiempos, cuando hice eso sirdarkcat me mando un aviso por que andaba duplicando requests y en esos tiempos no conocía o me daba flojera manejar cache jajaja

Somos de masomenos la misma generación de elhacker.

Saludos!
|-