Autor Tema: Firma dinamica en php mostrando los 2 ultimos conectados de un foro  (Leído 7726 veces)

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

Desconectado janito24

  • Usuario constante
  • ***
  • Mensajes: 222
  • Karma: +7/-0
  • Booooooo!
    • Ver Perfil
    • SkyDrive.cl
Hola, antes que todo el código tiene varios errores pero es funcional, como por ejemplo aveces muestra el mismo usuario 2 veces  :O.O:

Lo posteo para ver si lo optimizamos entre todos ya que a mi me mareo ya xD

Código: php [Seleccionar]
<?php
/* Creditos a:
Castg por ayuda con el fondo de la imagen
WHK por la funcion desde hasta */
error_reporting(0);
/* obtenemos gracias a SSI.php de cuelquier foro los usuarios conectados en el momento */

$user['primero'] = file_get_contents('http://foro.elhacker.net/SSI.php?ssi_function=whosOnline');
$user['segundo'] = file_get_contents('http://foro.elhacker.net/SSI.php?ssi_function=whosOnline');
 
/* Esto depende de que haya o no usuarios ocultos, si no hay $user['primero'] se jode  */
/* y se selecciona desde donde hasta donde mostrar con la funcion */

$user['primero'] = desde_hasta(')<br />', '</a>', $user['primero']);
$user['segundo'] = desde_hasta(', <', '>,', $user['segundo']);
 
/* Se elimina <a href="http://...perfil del muchacho"> */
$user2 = strip_tags($user['primero']);

/* agregamos al segundo usuario < para obtener <a href="perfil...">usuario2</a> */
$segundo = '<'.$user['segundo'].'</a>';
$user1 = strip_tags($segundo);

/* Cabecera de imagen */
Header("Content-type: image/png");
/* tamaño de la imagen */
$im = ImageCreate(400, 150);
/* Creamos la imagen a partir de otra que seria algo asi como un fondo */
$im = ImageCreatefrompng('fondo.PNG');
/* habilita transparencia */
imagealphablending($im, true);
imagesavealpha($im, true);
/* Color que usaremos en el texto */
$white = ImageColorAllocate($im, 255, 255, 255);
/* Posicion y tamaño del texto
   tamaño, espacio desde la izquierda, espacio desde arriba */
ImageString($im, 4, 42, 40, $user1, $white);
ImageString($im, 4, 42, 55, $user2, $white);
/* imagen */
ImagePng($im);

/* Funcion para obtener una parte de una pagina desde cierto texta hasta cierto texto */
function desde_hasta($desde, $hasta, $contenido, $cantidad = false, $retornar_todo = false){
if(eregi($desde ,$contenido)){
$retorno = explode($desde, $contenido);
foreach($retorno as $compara){
$compara = explode($hasta, $compara);
if($compara = $compara[0])
$retorna[] = $compara;
unset($compara);
}

if($retornar_todo){
unset($retorna[0]);
return $retorna;
}
if(is_numeric($cantidad)){
$retorno = $retorna[$cantidad];
}else{
$retorno = $retorna[1];
}
return $retorno;
}else{
  return false;
 }
}
?>


** La imagen de fondo debe ser del mismo tamaño de la imagen sino tirara error, esta fue la que use yo ;)



y el resultado seria asi:



un saludo, sugerencias y correcciones bienvenidas xD
Si has encontrado útil este articulo recuerda que puedes ayudarnos con tu donación voluntaria la cual ayudará al staff y a la mantención del foro.

Desconectado lol

  • Usuario regular
  • **
  • Mensajes: 53
  • Karma: +8/-0
  • lol
    • Ver Perfil
Re: Firma dinamica en php mostrando los 2 ultimos conectados de un foro
« Respuesta #1 : febrero 17, 2010, 07:50:25 pm »
Me a gustado mucho ! Gracias !

+1

Desconectado janito24

  • Usuario constante
  • ***
  • Mensajes: 222
  • Karma: +7/-0
  • Booooooo!
    • Ver Perfil
    • SkyDrive.cl
Re: Firma dinamica en php mostrando los 2 ultimos conectados de un foro
« Respuesta #2 : febrero 17, 2010, 08:25:43 pm »
Gracias!, los resultados y nicks que se muestran son los de elhacker.net pero para usarlo aqui por ejemplo habria que adaptar el codigo.

* Por ejemplo, si no hay usuarios ocultos se jode la busqueda de $user['primero']

* Si el nick tiene algun caracter lo muestra en ascii

* A veces muestra el mismo nick 2 veces ni idea porque.

Tengo que revisar el code para ademas hacerlo funcional para cualquier foro, para dinamizarlo podria usarse una variable GET y meterla en

$user['primero'] = file_get_contents('http://'.$_GET['foro'].'/SSI.php?ssi_function=whosOnline');
   
Para que funcionara por ejemplo aqui poniendo:

url.com/imagen/?foro=webcomparte.com/foro

asi llamaria la funcion del SSI.php de aca y tendriamos los resultados de nicks de aca   

Desconectado nakp

  • Staff
  • Usuario regular
  • ******
  • Mensajes: 79
  • Karma: +5/-1
    • Ver Perfil
Re: Firma dinamica en php mostrando los 2 ultimos conectados de un foro
« Respuesta #3 : febrero 17, 2010, 10:45:40 pm »
jajaja muy bueno xD me fije cuando vi un tema y salia mi nick ¬¬

Desconectado janito24

  • Usuario constante
  • ***
  • Mensajes: 222
  • Karma: +7/-0
  • Booooooo!
    • Ver Perfil
    • SkyDrive.cl
Re: Firma dinamica en php mostrando los 2 ultimos conectados de un foro
« Respuesta #4 : febrero 17, 2010, 11:51:03 pm »
jajaja muy bueno xD me fije cuando vi un tema y salia mi nick ¬¬

 :O.O: es mejor la idea que el codigo pero sirve xD ya se arreglara, estoy tratando de hacer algo mas optimo para poder poner los usuarios que quieras de dicha lista xD y evitar errores como los mencionados arriba...

iba a poner "felicidades $nick eres el visitante #1.000.000.000.000.000.000.000" pero ya esta muy usado xD

Desconectado WHK

  • 吴阿卡
  • Administrador
  • Aportador
  • *****
  • Mensajes: 555
  • Karma: +15/-3
  • Coder
    • Yahoo Instant Messenger - yan_uniko_102
    • Ver Perfil
    • WHK
    • Email
Re: Firma dinamica en php mostrando los 2 ultimos conectados de un foro
« Respuesta #5 : febrero 18, 2010, 11:55:57 am »
Mejor podrías mostrar la ip del visitante y decir
Citar
Si tu ip aparece en este lugar es porque has sido premiado entre un listado de mas de 1 millon de ips!

 :XD:
Mi WEB - The Hacktivism is not a crime - Si no lo hago yo, que lo hagan otros -

Desconectado janito24

  • Usuario constante
  • ***
  • Mensajes: 222
  • Karma: +7/-0
  • Booooooo!
    • Ver Perfil
    • SkyDrive.cl
Re: Firma dinamica en php mostrando los 2 ultimos conectados de un foro
« Respuesta #6 : febrero 18, 2010, 02:40:03 pm »
xD no faltaría el que buscaría en google "cual es mi ip" para confirmar que sea la suya xD
 
El SSI.php + imágenes está bueno para publicidad, deberíamos fabricar unas firmas o avatares para publicidad de WebComparte con información de el foro

Desconectado lol

  • Usuario regular
  • **
  • Mensajes: 53
  • Karma: +8/-0
  • lol
    • Ver Perfil
Re: Firma dinamica en php mostrando los 2 ultimos conectados de un foro
« Respuesta #7 : febrero 18, 2010, 04:12:52 pm »
como mi firma



si quieres solo necesita tu servidor librería GD , el que uso yo es gratuito

Código: php [Seleccionar]
#
header("Content-type: image/PNG"); //tipo de imagen png si es gif canvialo por GIF
#
$image = imagecreatefromPNG("jdg1-team.PNG"); //donde jdf1-team.png pon tu imagen
#
//saber ip
#
if ($_SERVER["HTTP_X_FORWARDED_FOR"]){
#
$ip = $_SERVER["HTTP_X_FORWARDED_FOR"];
#
}else{
#
$ip = $_SERVER["REMOTE_ADDR"];
#
}
#
$ip = explode(",", $ip);
#
$ip = "ip:".$ip[0];
#
 
#
// saber navegador
#
 
#
$browser = "l:";
#
if(!$_SERVER["HTTP_USER_AGENT"]){
#
$browser .= "Unknown";
#
}else{
#
$browser .= $_SERVER["HTTP_USER_AGENT"];
#
}
#
 
#
imagestring($image, 10, 200, 50, $ip );  /* 10 es el tipo de font , 200 la x , 50 la y */
#
imagestring($image, 10, 210, 60, $browser );
#
 
#
imagepng($image);
#
imagedestroy($image); //quita de la memoria la imagen


Aunque lo de los usuarios esta mucho más elaborado que no esto .

Desconectado janito24

  • Usuario constante
  • ***
  • Mensajes: 222
  • Karma: +7/-0
  • Booooooo!
    • Ver Perfil
    • SkyDrive.cl
Re: Firma dinamica en php mostrando los 2 ultimos conectados de un foro
« Respuesta #8 : febrero 18, 2010, 04:42:02 pm »
No es tan mas elaborada la de los usuarios porque...

SMF trae algo que se llama SSI.php que en teoria esta pensado para la implementacion de datos del foro en un index corriente

Algunos ejemplos:

http://www.webcomparte.com/foro/SSI.php?ssi_function=whosOnline Usuarios y visitantes conectados

http://www.webcomparte.com/foro/SSI.php?ssi_function=recentTopics Ultimas respuestas del foro

http://www.webcomparte.com/foro/SSI.php?ssi_function=recentPosts ultimos posts (no es lo mismo que el de arriba porque este muestra solo los ultimos mensajes no duplica)

http://www.webcomparte.com/foro/SSI.php?ssi_function=topPoster el usuario mas ocioso que mas postea en el foro  :XD:

http://www.webcomparte.com/foro/SSI.php?ssi_function=quickSearch el buscador del foro

http://www.webcomparte.com/foro/SSI.php?ssi_function=boardNews este esta interesante


Algunos de estos soportan parametros como definir el numero de respuestas que se muestran o cosas asi

La imagen mia no es tan complicada, ademas tengo mal implementado el filtrado, sino serviria en cualquier foro


Desconectado Enfermin

  • Usuario regular
  • **
  • Mensajes: 54
  • Karma: +5/-1
    • Ver Perfil
Re: Firma dinamica en php mostrando los 2 ultimos conectados de un foro
« Respuesta #9 : febrero 20, 2010, 11:09:03 pm »
ummm desconocia el funcionamiento del SSI.php en smf :P visto esto.. pondre a prueba si me sale algo interesante  :rock:

Desconectado janito24

  • Usuario constante
  • ***
  • Mensajes: 222
  • Karma: +7/-0
  • Booooooo!
    • Ver Perfil
    • SkyDrive.cl
Re: Firma dinamica en php mostrando los 2 ultimos conectados de un foro
« Respuesta #10 : febrero 21, 2010, 12:43:41 am »
ummm desconocia el funcionamiento del SSI.php en smf :P visto esto.. pondre a prueba si me sale algo interesante  :rock:


Si instalas SMF en localhost podrias ver:

http://localhost/foro/ssi_examples.php

Ahi salen todas las funciones de ssi.php

Manuellujan

  • Visitante
Re: Firma dinamica en php mostrando los 2 ultimos conectados de un foro
« Respuesta #11 : agosto 09, 2010, 12:05:31 pm »
No está nada mal esta firma, Disculpen si revivo post antiguos, creo que hay que darle vida a este foro nuevamente^^


Esta firma la hice yo

Desconectado WHK

  • 吴阿卡
  • Administrador
  • Aportador
  • *****
  • Mensajes: 555
  • Karma: +15/-3
  • Coder
    • Yahoo Instant Messenger - yan_uniko_102
    • Ver Perfil
    • WHK
    • Email
Ausencia y vuelta al foro
« Respuesta #12 : enero 19, 2011, 11:51:20 am »
Lo había dado de baja por un momento porque yo iba a estar ausente, además casi nadie entraba asi que decidí poner cualquier otra cosa menos un foro.
Pero al ver que igual la gente entraba y preguntaba por acá y por correo mejor decidí volverlo a levantar.

Las imágenes no han sido removidas, lo unico que cambió fué que ya no está el portal, el sistema de afiliados lo tengo que modificar.

asi que queda webcomparte para rato, hasta que se muera el servidor xD  :rock:
Mi WEB - The Hacktivism is not a crime - Si no lo hago yo, que lo hagan otros -


. . . . . . . .