Ver Mensaje Individual
  #2 (permalink)  
Antiguo 15/06/2011, 03:56
Avatar de Triby
Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 16 años, 3 meses
Puntos: 2237
Respuesta: en local funciona, en remoto no

%5C = \
%27 = '

Estas enviando toda la consulta por URL... lo que me parece muy mala practica y:

tipo_empresa = 'proveedores' AND t_facturas.id_empresa = '1'

Las comillas simples (o apostrofes) son los causantes de ese %5C porque el servidor remoto seguramente tiene la directiva de PHP magic_quotes en ON y, la solucion rapida seria:

$consulta = stripslashes($_GET['consulta']);

Pero, ya que tienes a la vista muchos datos de la tabla, seria muy facil inyectar codigo malicioso para obtener o dañar la informacion.

Solucion semi-rapida:
1- Envia por URL solo los datos que necesites para filtrar los resultados, ejemplo: ?tipo_empresa=proveedores&id_empresa=1&otro_dato=v alor
2- Tomas cada variable recibida y armas la consulta, verificando que cada campo sea del tipo esperado y pasandolo por mysql_real_escape_string()

Solucion ideal:
Busca informacion sobre seguridad e inyeccion SQL, aplica todo lo que aprendas y no tomes las opciones faciles como enviar toda la consulta por URL.
__________________
- León, Guanajuato
- GV-Foto