Foros del Web » Programando para Internet » PHP »

Preg_match que iba ya no va

Estas en el tema de Preg_match que iba ya no va en el foro de PHP en Foros del Web. Hola, Usaba esto para hacer unas búsquedas: if (preg_match("/(.*)([0-9]*)$nombrecategoriabuscar(.*)/smUi", Pero me acabo de dar cuenta que cuando $nombrecategoriabuscar lleva algunas cosas como ' no funciona... ...
  #1 (permalink)  
Antiguo 12/01/2009, 11:25
Usuario no validado
 
Fecha de Ingreso: marzo-2004
Mensajes: 349
Antigüedad: 20 años, 1 mes
Puntos: 0
Preg_match que iba ya no va

Hola,

Usaba esto para hacer unas búsquedas:


if (preg_match("/(.*)([0-9]*)$nombrecategoriabuscar(.*)/smUi",


Pero me acabo de dar cuenta que cuando $nombrecategoriabuscar lleva algunas cosas como ' no funciona... ¿qué puedo hacer?

¿cuales son todos los signos que me darían problemas?
  #2 (permalink)  
Antiguo 12/01/2009, 11:44
Avatar de Bytevamp  
Fecha de Ingreso: junio-2005
Ubicación: /var/www/
Mensajes: 789
Antigüedad: 18 años, 10 meses
Puntos: 7
Respuesta: Preg_match que iba ya no va

No estoy muy seguro, pero creo que con addslashes podria ir:
Código PHP:
$busqueda=addslashes($nombrecategoriabuscar);
if (
preg_match("/(.*)([0-9]*)$busqueda(.*)/smUi"
Un saludo.
__________________
"zankius veri mach" a todos los que me habeis ayudado.
carteles para inmobiliarias || alquiler de coches
  #3 (permalink)  
Antiguo 12/01/2009, 12:58
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Preg_match que iba ya no va

mmm.... en realidad, debes usar preg_quote pues para eso existe !!

Código PHP:
$str '^cadena}con{[caracteres+prohibidos-o\'reservado$$$]';
$str preg_quote($str);

$expr "/^$str$/";

// ... 
http://php.net/preg_quote
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #4 (permalink)  
Antiguo 12/01/2009, 14:55
Usuario no validado
 
Fecha de Ingreso: marzo-2004
Mensajes: 349
Antigüedad: 20 años, 1 mes
Puntos: 0
Respuesta: Preg_match que iba ya no va

Gracias a ambos, mañana hago pruebas y os cuento.
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:43.