|
|
|
Mensaje: #1
Firma «dinámica» en PHP
Hace mucho tiempo quería saber cómo hacer esas firmas que tienen datos «dinámicos» ya sea texto, imágenes, entre otras cosas. Investigué un poco y encontré una manera de hacerlo, por lo cuál decidí crear ésta entrada.
Necesitamos principalmente un host para alojar el archivo, sea éste pago o gratuito. En todo caso el requisito más importante es que tenga la librería GD activada.
Para empezar, hay que tener la imagen que servirá de base y/o fondo. En mi caso elegí ésta:
Recuerden elegir una que esté bien estilizada, sea de buenas tonalidades y muy clara para lo que desean hacer.
También pueden darle algunos retoques en la zona donde se mostrará el texto para hacer más énfasis.
Ahora hay que programar el código PHP que se encargará de escribir y «editar» la imagen.
Lenguaje PHP
<?php
/*
* Escrito por .:WindHack:.
* Agradecimientos: Kenkeiras
* <a href="http://www.daw-labs.com" target="_blank">http://www.daw-labs.com</a> & <a href="http://www.cibernodo.net" target="_blank">http://www.cibernodo.net</a>
*/
$UserAgent = $_SERVER['HTTP_USER_AGENT'];
$IP = $_SERVER['REMOTE_ADDR'];
/* GetBrowser($UserA)
* Esta función se encarga de obtener el nombre del navegador
* usando como medio la cadena del UserAgent.
*/
function GetBrowser($UserA)
{
$Browser = "";
if (strstr($UserA,"Chrome"))
$Browser = "Chrome";
elseif (strstr($UserA,"Firefox"))
$Browser = "Firefox";
elseif (strstr($UserA,"MSIE"))
$Browser = "Internet Explorer";
elseif (strstr($UserA,"Opera"))
$Browser = "Opera";
elseif (strstr($UserA,"Safari"))
$Browser = "Safari";
else
$Browser = "(?)";
return $Browser;
}
/* GetOS($UserA)
* Esta función usa el mismo método que la anterior,
* exceptuando que se encarga sólo de obtener el nombre
* del Sistema Operativo (OS).
*/
function GetOS($UserA)
{
$OS = "";
if (strstr($UserA,"Windows"))
$OS = "Windows";
elseif (strstr($UserA,"Linux"))
$OS = "Linux";
elseif (strstr($UserA,"Mac"))
$OS = "MAC";
else
$OS = "(?)";
return $OS;
}
/* Tipo de contenido. Puede ser JPEG, GIF, etc. */
Header("Content-Type: Image/PNG");
/* Crea la imagen desde un PNG. */
$ImageC = ImageCreateFromPNG("WindHack.png");
/* Establece el color. */
$Color = ImageColorAllocate($ImageC,18,33,95);
/*
* ImageString(Imagen,Tam.Letra,PosX,PosY,Texto,Color);
*
* Escribe en la imagen.
*/
ImageString($ImageC,5,8,10,"Tu IP es: $IP",$Color);
/* Obtenemos valores...*/
$Browser = GetBrowser($UserAgent);
$OS = GetOS($UserAgent);
/*Si el resultado de ambos es diferente a "", escribimos...*/
if (Browser != "" && OS != "")
ImageString($ImageC,5,8,30,"Y usas $Browser en $OS...",$Color);
/* Se convierte a PNG. */
ImagePNG($ImageC);
/* Se libera el espacio. */
ImageDestroy($ImageC);
?>
Terminado ésto, tendremos como resultado:
Escrito por .:WindHack:.
DaW - Labs & Cibernodo
"The only thing they can't take from us are our minds."
|
|
| 14-10-2010 09:32 AM |
|
|
|
Mensaje: #2
RE: Firma «dinámica» en PHP
Vaya, interesante habia buscado algo similar, es simple.
Linux Registered User #511239
|
|
| 14-10-2010 11:59 PM |
|
|
|
Mensaje: #4
RE: Firma «dinámica» en PHP
Me encantó esto de la firma dinámica, no sabía que código sería tan cortillo y ni imaginaba como era. Tengo que probar a hacerlo jeje
|
|
| 15-10-2010 02:18 AM |
|
|
|
Mensaje: #5
RE: Firma «dinámica» en PHP
Muy bien :-)
|
|
| 17-10-2010 09:26 AM |
|
|
|
Mensaje: #6
RE: Firma «dinámica» en PHP
exelente me diseñare la mia XD
|
|
| 19-11-2010 05:34 AM |
|
Usuario(s) navegando en este tema: 1 invitado(s)
|