Foros del Web » Programando para Internet » PHP »

ereg no me coincide! alguien sabe por que?

Estas en el tema de ereg no me coincide! alguien sabe por que? en el foro de PHP en Foros del Web. pattern = '/^(UPDATE|INSERT INTO|DELETE FROM|SELECT [^ ]+ FROM) ([\_\w]+)(| [.]*)$/'; string = "SELECT * FROM xtable"; Esto es porque quiero que mis tablas en la ...
  #1 (permalink)  
Antiguo 20/06/2009, 11:03
Avatar de jaao_death  
Fecha de Ingreso: abril-2009
Ubicación: Murcia/españa
Mensajes: 229
Antigüedad: 15 años
Puntos: 6
Información ereg no me coincide! alguien sabe por que?

pattern = '/^(UPDATE|INSERT INTO|DELETE FROM|SELECT [^ ]+ FROM) ([\_\w]+)(| [.]*)$/';

string = "SELECT * FROM xtable";

Esto es porque quiero que mis tablas en la base de datos tengan un prefijo que las haga de acceso más difícil para terceros, en el código para acceder a la base de datos uso la clase mysqli como padre de una clase llamada database, en el cual modifico el método query haciendo que en cada consulta se manipule la query de tal manera que a la tabla se le añada el prefijo, por medio de preg_replace().

es decir si hago un query del tipo:
database::query('SELECT x FROM table');

La query que se ejecutaría sería:
mysqli::query('SELECT x FROM prefix_table');

pero el pattern que muestro arriba no me funciona correctamente, es más, paso la query por eregi para ver si coincide, pero el resultado es negativo.

Alguien podría ayudarme a crear un buen pattern?
Código PHP:
preg_replace('/^(UPDATE|INSERT INTO|DELETE FROM|SELECT [.]+ FROM) ([\_\w]+)(| [.]*)$/i'"$1 {$prefix}$2 $3"$query); 
__________________
Mucha seguridad nunca es suficiente.... Por una red segura
El señor ilustre obscurece nuestras mentes
Usas Linux? http://www.dudalibre.com/gnulinuxcounter
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 14:27.