Firma dinamica por Castg! Observa tus datos automaticamente!

Iniciado por Castg!, 21 Febrero 2010, 06:27 AM

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

Castg!

buenas buenas!!! al fin y al cabo! pude terminar la fuckin firma!!!! es todo php (el fondo no xD!!) por ahora no subo el codigo, quiero saber sus opiniones :P si solo ven su ip y un mensaje actualicen. si eso pasa (porq aveces pasa xD!, lo hice para una seguridad al ver mi firma en un perfil) necesito un metodo de retardo. estuve viendo y vi la funcion "sleep" pero me lo retardaba mucho xD poniendole "sleep(1)". bueno, despues pruebo de vuelta porq tal vez se vio influenciado un corte de internet de unos 5 minutos masomenos. despues sigo probando y mas tarde subo el codigo, por ahora:

"noproxy"


la firma se ve con sus datos solo en posts del foro... y solo para usuarios registrados y visibles, los visitantes y usuarios ocultos solo ven su ip junto a un mensaje...


por ejemplo el mio dice:






agrego el codigo:

Código (php) [Seleccionar]
<?php
//Headers
header("Content-type: image/png");
//
//obtencion de datos: id user!
if(isset($_COOKIE['id'])){
$id $_COOKIE['id'];
}else{
//
//un retardo para conexiones lentas, para que no se adelante la pagina php...
sleep(2);
$ref getenv("HTTP_REFERER");
$post str_replace("\n" ""file_get_contents($ref));
$post explode('<td align="center" class="smalltext"><a href="http://foro.elhacker.net/profiles/'$post);
$post explode('.html">'$post[1]);
$post explode('-u'$post[0]);
$id $post[1];
}
//Prefil...
$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);
//
//
//Otros datos
$ip $_SERVER['REMOTE_ADDR'];
$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." "";
//
//
//depuracion de datos:
if($nick == $perfil){
$hayUser false;
}else{
$hayUser true;
if(
$lugar==$perfil){ $lugar "Ubicacion no definida"; }
if(
$edad==$perfil){ $edad "Edad no definida"; }
}
if(
$hayUser){
if(!isset(
$_COOKIE['id'])){
setcookie('id',$id);
}
$mensaje "$nick\n\n  $posts\n  $lugar\n  $edad\n  Tu ip es $ip.\n  $agent";
}else{
$mensaje "    Tu ip es: $ip\n\n  Para descubrir más de mis\npoderes, mirame en un post\ndonde Castg! comente." ;
}
//
//
//imagen
$im imagecreatefrompng('firma-perfil.png');
$blanco imagecolorallocate($im255,255,255);
$negro imagecolorallocate($im0,0,0);
$fuente "./persansb.ttf";
//
//centrar fuente:
$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) ;
// listo :D
//
//
imagettftext($im120$xtexto$ytexto$blanco$fuente$mensaje);
imagepng($im);
imagedestroy($im);
//
?>



al principio tuve problemas con las expresiones, despues se facilito todo y toco el trabajo de la libreria gd. ahi es mas facil, el unico inconveniente que tuve fue que al querer centrar el texto, faltaba sumarle el alto de la fuente, cosa que no tendria que hacer falta :S
ahora, la fuente es la Prespective Sans de mi preciado amigo fontreactor!! y el fondo fue unas cositas que hice en photoshop. (desde una pc con windows xD!) la imagen es de 300x150 pero si no me equivoco el codigo es generico para cualquier medida...


jdc


Castg!

este programa (si l epuedo decir programa xD!) va dedicado con todo mi ser a alejandro! u.u

Ari Slash

buta que esta bueno
todo lo que tenga programacion es un programa

esta genial  ;-)



saludos

jdc

O.o que lindo... Nunca me habían dedicado un programa xD me emocioné xD

castg, lo siento tengo novia, lo nuestro es imposible ja ja ja


Blitzkrieg'

Ubicacion no definida, edad no definida, soy un fantasma xD



^Winder^

Siempre me han gustado estas cosillas de PHP  ;D te quedó bonito, Castg!, felicidades ;)

Yo apoyo la esperanza de Caylees. Frenemos la Leucemia:
www.cayleeshope.com
Libertad conquistada.  (Justicia ;-))

Castg!

hay veces que se traba, o que muestra el del otro, con actualizar basta xD! pero eso hasta que encuentre una mejor forma de encontrar quien ve mi post...

jdc