elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Guía rápida para descarga de herramientas gratuitas de seguridad y desinfección


+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web
| | |-+  PHP (Moderador: #!drvy)
| | | |-+  str_ireplace no funciona llamado desde función
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: str_ireplace no funciona llamado desde función  (Leído 1,975 veces)
-Ramc-


Desconectado Desconectado

Mensajes: 495



Ver Perfil
str_ireplace no funciona llamado desde función
« en: 26 Abril 2010, 20:47 pm »

Hola a todos ¿Cómo están?

Veran tengo un problema con un script PHP que a mi parecer está bien, pero, aun así no funciona.

Tengo dos scripts:

BDConnection.php
Código
  1. <?php
  2. $reservedWords = array("ALTER", "AND", "ANY", "BETWEEN", "FROM",
  3.    "SELECT", "JOIN", "CREATE", "LIKE", "TABLE", "DECLARE", "DELETE", "UNION", "UPDATE",
  4.    "DISTINCT", "USE", "DROP", "VALUES", "EXEC", "EXECUTE", "INSERT", "INTO", "'");
  5.  
  6. function cleanSQLi($value) { //Clean SQLi
  7.  $fin = trim(htmlentities($value));
  8.    $fin = stripslashes($fin);
  9.  }
  10.  return str_ireplace($reservedWords, '', $fin);
  11. }?>

y ini.php
Código
  1. <?php
  2. include("libraries/BDConnection.php");
  3. $value = "<h1>INSERT INTO Empresa / VALUES('Hola', 'XD')</h1>";
  4. echo cleanSQLi($value);
  5. //echo str_ireplace($reservedWords, "", $value);
  6. ?>

Como ven agrego BDConnection.php y llamo a la función cleanSQLi de ese script, el problema es que la función hace todo el proceso menos la parte de str_ireplace, el str_ireplace no hace nada, pero, si hago la llamada a la función directamente en ini.php sí funciona, como está en el último comentario de ini.php, si meto esa función dentro de una función dentro de ini.php ya no funciona, en teoría creo yo que debería funcionar, pero, no lo hace aunque deje la función solamente haciendo esa llamada.

¿Alguién sabe por qué?

Gracias a todos.

EDIT: Resuelto, estuve dandole vueltas varias horas y era porque al principio de la función faltaba el global $reservedWords; para que reconozca la variable.


« Última modificación: 26 Abril 2010, 21:22 pm por -Ramc- » En línea


Shhh... be vewy, vewy, quiet!  I'm hunting wabbits...
LA PANDILLA MAS GRANDE DE MI CIUDAD, SE LLAMA POLICIA NACIONAL.
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
LLAMADO A FUNCION QUE RETORNAN ESTRUCTURAS
Programación C/C++
mariaorlando0922 2 1,932 Último mensaje 14 Febrero 2013, 22:04 pm
por durasno
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines