Archivo

Archivo para la categoría ‘Programación’

Corregir el error “Allowed memory size of 33554432 bytes exhausted”

Viernes, 12 de Junio de 2009 webmaster 1 comentario

error-simplepieCon la actualización a Wordpress 2.8, muchos a muchos les ha saltado alguno de estos errores y otros más ni siquiera pudieron entrar al panel de administración pues mostraba una pagina en blanco:

Fatal error: Allowed memory size of 33554432 bytes exhausted (tried to allocate 122880 bytes) in /home/FotoPex/public_html/wp-includes/class-simplepie.php on line 13235

Fatal error: Allowed memory size of 33554432 bytes exhausted (tried to allocate 122880 bytes) in /home/FotoPex/public_html/wp-includes/class-simplepie.php on line 2618

Para solucionar el problema solo tienes que agregar la siguiente linea en tu archivo wp-config.php: Leer más…

 

Categories: php Tags: , , ,

Reemplazando Cadenas en Tablas de MySQL

Miércoles, 10 de Junio de 2009 webmaster Sin comentarios

Si necesitas reemplazar un mismo texto en varios registros en MySQL puedes hacerlo de la siguiente manera.

MySQL:
  1. UPDATE la_tabla
  2.  SET el_campo =
  3.  REPLACE (el_campo,’texto_antiguo’,texto_nuevo’)

Esta forma es la ideal para realizar cambios de forma masiva. Leer más...

 

Categories: Bases de Datos Tags: , ,

¿Que es un bucle?

Viernes, 8 de Mayo de 2009 webmaster 1 comentario

En programación:

Sentencia que se realiza repetidas veces a un trozo aislado de código, hasta que la condición asignada a dicho bucle deje de cumplirse.

En la Vida Real:

El director le dice a la secretaria:

- Vamos a viajar al exterior por una semana, para un Seminario. Haga los preparativos del viaje…

La secretaria llamada al marido:

- Voy a viajar al exterior con el director por una semana. Cuidate, querido.

El marido llama a la amante:

- Mi mujer va a viajar al exterior por una semana, vamos a pasarnos esa semana juntos, mi reina…

La amante llama al niño a quien le da clases particulares:

- Tengo mucho trabajo la próxima semana. No tienes que venir a clases…

El niño llama a su abuelo:

- Abuelo, la próxima semana no tengo clases, mi profesora estará ocupada. ¡Vamos a pasar la semana juntos!

El abuelo (que es el director de esta historia) llama a la secretaria:

- Voy a  pasar la próxima semana con mi nieto, por lo que no voy a  participar en el Seminario. Puede cancelar el viaje.

La secretaria llama al marido:

- El director de la empresa cambió de idea y acaba de cancelar el viaje.

El marido llama a la amante:

- No podremos pasar la próxima semana juntos, el viaje de mi mujer fue cancelado.

La amante llama al niño de las clases particulares:

- Cambio de planes: esta semana vamos a tener clases como siempre.

El niño llama al abuelo:

- Abuelo, mi profesora me dijo que esta semana tengo clases. Discúlpame, no voy a poder hacerte compañía.

El abuelo llama a la secretaria:

- Mi nieto me acaba de decir que no va a poder estar conmigo esta semana..  Continúe con los preparativos del viaje al seminario…

Rufo siempre te arranca una sonrisa.

 

Categories: php Tags:

Obtener la IP del navegante con PHP

Domingo, 26 de Abril de 2009 webmaster Sin comentarios

Las siguientes funciones pertenecen al plugin Check IP Behind Proxy de Ricardo Galli y como está en su Antiguo y abandonado blog de Ricardo Galli :-( , mejor lo guardamos para tenerlo mas a la mano.

La idea es obtener con php la "IP real" del usuario que visita tu página.

PHP:
  1. function isIPIn($ip,$net,$mask) {
  2.         $lnet=ip2long($net);
  3.         $lip=ip2long($ip);
  4.         $binnet=str_pad( decbin($lnet),32,"0","STR_PAD_LEFT" );
  5.         $firstpart=substr($binnet,0,$mask);
  6.         $binip=str_pad( decbin($lip),32,"0","STR_PAD_LEFT" );
  7.         $firstip=substr($binip,0,$mask);
  8.         return(strcmp($firstpart,$firstip)==0);
  9. }
  10.  
  11. function isPrivateIP($ip) {
  12.         $privates = array ("127.0.0.0/24", "10.0.0.0/8", "172.16.0.0/12", "192.168.0.0/16");
  13.         foreach ( $privates as $k ) {
  14.                 list($net,$mask)=split("/",$k);
  15.                 if (isIPIn($ip,$net,$mask)) {
  16.                         return true;
  17.                 }
  18.         }
  19.         return false;
  20. }
  21.  
  22. function check_ip_behind_proxy() {
  23.     $user_ip = $_SERVER["REMOTE_ADDR"];
  24.     if (isset($_SERVER["HTTP_X_FORWARDED_FOR"])) {
  25.         $user_ip = $_SERVER["HTTP_X_FORWARDED_FOR"];
  26.     } else if (isset($_SERVER["HTTP_CLIENT_IP"])) {
  27.         $user_ip = $_SERVER["HTTP_CLIENT_IP"];
  28.     } else {
  29.         return $user_ip;
  30.     }
  31.     $ips = preg_split('/[, ]/', $user_ip);
  32.     foreach ($ips as $ip) {
  33.         if (preg_match('/^(\d{1,3}\.){3}\d{1,3}$/s', $ip)
  34.             && !isPrivateIP($ip) ) {
  35.             $user_ip = $ip;
  36.         }
  37.     }
  38.     return $user_ip;
  39. }
  40.  
  41. echo check_ip_behind_proxy();

Como puedes ver hicimos un pequeñisimo cambio en check_ip_behind_proxy(): se descomenta y elimina la variable obligatoria $user_ip.

Clic aquí para bajar el plugin completo compactado ó en texto.
Leer más...

 

Categories: php Tags: , , , ,