Foros del Web » Programando para Internet » PHP »

Depuración de código

Estas en el tema de Depuración de código en el foro de PHP en Foros del Web. Hola, desde hace un tiempo uso un script prefabricado que sirve de banner exchange. Nunca me ha dado problemas, pero el otro día vi que ...
  #1 (permalink)  
Antiguo 11/01/2009, 10:44
Avatar de Spydis  
Fecha de Ingreso: mayo-2003
Ubicación: Donosti
Mensajes: 90
Antigüedad: 20 años, 11 meses
Puntos: 1
Exclamación Depuración de código

Hola, desde hace un tiempo uso un script prefabricado que sirve de banner exchange. Nunca me ha dado problemas, pero el otro día vi que no funcionaba y era porque el hosting en el que estoy alojado sufrió una sobrecarga y me inutilizaron el archivo clave del exchange que es el que se llama para mostrar el banner. Me dijeron que aparte de que se llama muchas veces, estaba mal programado.
Me dijeron: "it uses huge memory footprint", he revisado el archivo y no se como podría mejorarlo para que no me diese problemas de memoria.

El archivo es el siguiente:
Código PHP:
<?PHP

include('./functions.php');
dq("update $s[tblname] set i_m = i_m + 1, i_earned = (i_m*$s[ratio]), i_nu = (i_nu+$s[ratio]) where username = '$_GET[ID]'",1);
$q dq("select max(number) from $s[tblname]"); $data mysql_fetch_row($q);
list(
$usec,$sec) = explode(' ',microtime()); srand((float) ($sec+($usec 100000))); $i=rand(0,$data[0]);

$q dq("select $s[tblname].*,MD5(RAND()) AS m from $s[tblname] where approved = 1 AND i_nu >= 1 AND NOT(username = '$_GET[ID]') ORDER BY m LIMIT 1",1);
$data mysql_fetch_assoc($q); 

if (
$data[username])
{ echo 
"<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0 Transitional//EN\">\n<HTML><HEAD>
  <META http-equiv=Content-Type content=\"text/html;\"></HEAD>
  <BODY><table border=0 cellpadding=0 cellspacing=0 width=$s[width]><tr>
  <td width=$s[width] valign=\"top\" align=\"left\"><a target=\"_blank\" href=\"$data[siteurl]\">
  

<img border=0 src=\"$data[urlbanner]\" width=$s[width] height=$s[height]></a><br>
<a href=\"http://www.mangantes.net/exchange\" target=\"_blank\" title=\"Mangantes | Exchange\"><img src=\"http://www.mangantes.net/exchange/mangantes_exchange.gif\" alt=\"Mangantes | Exchange\" border=0></a>
  </td></tr></table></BODY>"
;
  
dq("update $s[tblname] set i_nu = i_nu-1, i_w = i_w + 1 where username = '$data[username]'",1);



}else{
 echo 
"<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0 Transitional//EN\">\n<HTML><HEAD>
  <META http-equiv=Content-Type content=\"text/html;\"></HEAD>
  <BODY><table border=0 cellpadding=0 cellspacing=0 width=$s[width] valign=\"top\"><tr>
  <td width=$s[width] valign=\"top\" align=\"left\"><a target=\"_blank\" href=\"$s[defaulturl]\"><img border=0 src=\"$s[defaultbanner]\" width=$s[width] height=$s[height]></a><br>
<a href=\"http://www.mangantes.net/exchange\" target=\"_blank\"><img src=\"http://www.mangantes.net/exchange/mangantes_exchange.gif\" border=0></a>
  </td></tr></table></BODY>"
;
}

#########################################################################

?>
A ver si alguien puede ayudarme, Saludos!
  #2 (permalink)  
Antiguo 11/01/2009, 10:57
 
Fecha de Ingreso: abril-2006
Mensajes: 1.128
Antigüedad: 18 años
Puntos: 33
Respuesta: Depuración de código

Spidis:
El codigo no parece tener ningun problema.
Creo que el problema esta con tu hosting en el sentido que les estas utilizando mucho ancho debanda como consecuencia de los banners y te estan protestando porque se llama muchas veces lo que eso no es un problema y mas bien un beneficio. Ellos han recurrido a la excusa de que esta mal programado para que lo elimines y ls reduzcas la utilizacion de ancho de banda.
Es lo que puedo entender de tu caso.
Saludos
Franco
  #3 (permalink)  
Antiguo 11/01/2009, 11:02
Avatar de Spydis  
Fecha de Ingreso: mayo-2003
Ubicación: Donosti
Mensajes: 90
Antigüedad: 20 años, 11 meses
Puntos: 1
Respuesta: Depuración de código

Mmm, yo creo que tiene que ver más con la liberación de memoria, de todas formas no creo que me lo hayan dicho simplemente para que borre el archivo, pues me lo acaban de activar y me han dicho que como vuelva a ocurrir me lo inutilizan permanentemente.
Es bastante raro que por culpa de este script haya estado caído el servidor entero, es obvio que les consumió ancho de banda, pero aun asi me gustaría cerciorarme de si se puede depurar ligeramente el código para hacerlo más agil.

Espero otras respuestas
Saludos!
  #4 (permalink)  
Antiguo 11/01/2009, 11:08
 
Fecha de Ingreso: abril-2006
Mensajes: 1.128
Antigüedad: 18 años
Puntos: 33
Respuesta: Depuración de código

Spydis:
Tu codigo es ultra sencillo y claro como el agua.
Yo no veo por donde vas a hacer ese codigo mas rapido
o mas eficiente.
Sinceramente!.
Para mi decir que esta mal diseñado es una frase
que me hace pensar negativamente y trato de colegir
que hay algo mas que eso en esa afirmacion.
Saludos
Franco
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 13:34.