Archivo de la categoría 'Php'

Crear url a partir de una cadena en php

6 de Junio de 2010 | 4:41 pm

Esta es una función de php que convierte una cadena de texto que puede contener cualquier caracter extraño en una url con sólo letras y números. Ideal para crear urls.

function quitar_cosas_raras($s)
{
$s = ereg_replace(”[áàâãª]“,”a”,$s);
$s = ereg_replace(”[ÁÀÂÃ]“,”A”,$s);
$s = ereg_replace(”[ÍÌÎ]“,”I”,$s);
$s = ereg_replace(”[íìî]“,”i”,$s);
$s = ereg_replace(”[éèê]“,”e”,$s);
$s = ereg_replace(”[ÉÈÊ]“,”E”,$s);
$s = ereg_replace(”[óòôõºö]“,”o”,$s);
$s = ereg_replace(”[ÓÒÔÕÖ]“,”O”,$s);
$s = ereg_replace(”[úùûü]“,”u”,$s);
$s = ereg_replace(”[ÚÙÛÜ]“,”U”,$s);
$s = ereg_replace(”[<>!¡¿?=()/\%&$\·\"|#¬'^+*`¨´:;,.]“,”",$s);
$s = str_replace(”[","",$s);
$s = str_replace("]“,”",$s);
$s = str_replace(”{”,”",$s);
$s = str_replace(”}”,”",$s);
$s = str_replace(”ç”,”c”,$s);
$s = str_replace(”Ç”,”C”,$s);
$s = str_replace(”ñ”,”n”,$s);
$s = str_replace(”Ñ”,”N”,$s);
$s = str_replace(”@”,”o”,$s);

//limpiamos todos los caracteres invalidos
$s= ereg_replace(”[^ A-Za-z0-9_]“, “”, $s);

$s = str_replace(” “,”-”,$s);
return $s;
}

Añadir un include de php en un foro vBulletin

14 de Septiembre de 2009 | 10:03 am

No suelo usar este tipo de foros, pero me ha tocado solucionar un problema con un foro vBulletin.

Había que incluir un archivo de php para que mostrara la salida de éste en la cabecera del foro. En la edición de estilos del propio foro no permite introducir un include de la forma tradicional:

<?php include (”archivo.php”); ?>

(more…)

Crear una función con parámetros opcionales en php

19 de Agosto de 2009 | 12:35 pm

En php esta es la forma de declarar una función que luego se puede usar con uno o dos argumentos:

function argumentos_opcionales ($obligatorio, $opcional = ”)

{

if ($opcional!=”)

{

echo ‘has introducido un argumento opcional’;

}else

{

echo ”No has introducido el argumento opcional;

}

}

Para llamarla con un argumento:

argumentos_opcionales (’argumento1′);

Para llamarla con dos argumentos:

argumentos_opcionales (’argumento1′,’argumento2′);

Notice: SmartyValidate: [is_valid] form ‘login’ is not registered

1 de Abril de 2008 | 6:40 pm

Notice: SmartyValidate: [is_valid] form ‘login’ is not registered. Ese era el error que me ha dado hoy phplinkdirectory al intentar entrar en la administración. Parecía un error grave y no he tocado nada de nada…

Buscando he encontrado la solución en un post donde preguntaban algo similar en el foro de phplinkdirectory (en alemán), tan simple como extraña, borrar las cookies. Es extraño un error así… almacenado queda por si vuelve a pasar.

php_network_getaddresses: getaddrinfo failed: Name or service not known

6 de Enero de 2008 | 1:51 pm

Al incluir un archivo php de un servidor externo me encontré con los siguientes errores:

Warning: include() [function.include]: php_network_getaddresses:
getaddrinfo failed: Name or service not known in
/mi/ruta/www/prueba.php on line 2 Warning:
include(http://dominio.com/archivo.php) [function.include]:
failed to open stream: Success in /home/albionou/www/prueba.php
on line 2 Warning: include() [function.include]: Failed opening
'http://dominio.com/archivo.php' for inclusion
(include_path='.:/usr/share/php5') in /mi/ruta/www/prueba.php
on line 2

El servidor ya estaba configurado para incluir archivos externos y ya lo hacía con archivos de otros servidores.

Parece ser que no reconocía la dirección. Al hacer ping al dominio desde el servidor tampoco lo encontraba.

La solución ha sido editar el archivo /etc/hosts e incluir el dominio y su ip en la lista:

xxx.xxx.xxx.xxx dominio.com alias

Con esto ya ha funcionado a la perfección.

Incluir archivos en php de un servidor externo

6 de Enero de 2008 | 1:48 pm

Puede ser interesante incluir un archivo que se encuentra en otro servidor. Para conseguir esto, es necesario tener bien configurado el archivo php.ini.

allow_url_fopen=On
allow_url_include=On

Y reiniciar apache.

Puede ser que te encuentres con un error al incluir archivos externos en php.