Foros del Web » Programando para Internet » PHP »

Duda con la función preg_match

Estas en el tema de Duda con la función preg_match en el foro de PHP en Foros del Web. Buenas :) Otra vez por aquí, no me paran de surgir dudas. Tengo una función la cual comprueba el contenido del string que se le ...
  #1 (permalink)  
Antiguo 11/08/2011, 05:40
Avatar de Jask  
Fecha de Ingreso: abril-2006
Ubicación: Madrid
Mensajes: 773
Antigüedad: 18 años
Puntos: 15
Duda con la función preg_match

Buenas :)
Otra vez por aquí, no me paran de surgir dudas.
Tengo una función la cual comprueba el contenido del string que se le pase.
Código PHP:
function solo_texto($string){   
    
//Compruebo que no comience o termine por espacio
    
$patron "/^[[:alnum:]áéíóúüÁÉÍÓÚÜÑñ -_]+$/";
    if (
preg_match($patron$string)) {
        return 
true;
    }
    return 
false;

La duda que tengo es que cuando intento validar una palabra con acentos (los que ahí se especifican) me salta error, y no entiendo si es que la función, en realidad el patrón, está mal colocado o que :) a ver si me pueden ayudar.

Gracias
__________________
Os iusti meditabitur sapientiam
Si te he ayudado, por qué no un poquito de Karma :) ?
  #2 (permalink)  
Antiguo 11/08/2011, 06:07
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 15 años
Puntos: 1517
Respuesta: Duda con la función preg_match

Lo más probable sea problemas de codificación.
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #3 (permalink)  
Antiguo 11/08/2011, 06:07
Avatar de ArkangelGammar  
Fecha de Ingreso: enero-2011
Ubicación: <?php $persona->ubicacion('ArkangelGammar'); ?>
Mensajes: 179
Antigüedad: 13 años, 4 meses
Puntos: 19
Respuesta: Duda con la función preg_match

Que error te informa?
__________________
"No entiendes algo al menos que seas capaz de explicarselo a tu abuela.
Cada dia sabemos mas....y entendemos menos...."

A. Einstein - Genio mas alla de la razon.
  #4 (permalink)  
Antiguo 11/08/2011, 06:24
Avatar de Jask  
Fecha de Ingreso: abril-2006
Ubicación: Madrid
Mensajes: 773
Antigüedad: 18 años
Puntos: 15
Respuesta: Duda con la función preg_match

Cita:
Iniciado por abimaelrc Ver Mensaje
Lo más probable sea problemas de codificación.
No, la codificación no es. Al final, rebuscando, aunque no termino de entender bien el porque, ya que las expresiones regulares, para mí, es un mundo aparte, encontré la solución:

Código PHP:
$patron "/[\pL]+$/"
Y me valida tal como lo quiero: Letras con acento y sin acento, mayúsculas y minúsculas y eñe.
Lo que no sé que hace la barra / al principio y al final :S

Cita:
Iniciado por ArkangelGammar Ver Mensaje
Que error te informa?
Esto es lo que tengo
Código PHP:
if(!solo_texto($_POST['f_nombre']) || !solo_texto($_POST['f_apellido']) ){
            echo 
error("Comprueba los campos ya que has introducido caractéres no permitidos.");

En principio lo pude solucionar con lo que puse en la anterior cita, pero no entiendo muy bien porque. Buscaré a ver a que hace referencia.

Saludos !!
__________________
Os iusti meditabitur sapientiam
Si te he ayudado, por qué no un poquito de Karma :) ?

Etiquetas: funcion, preg_match
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 04:37.