Foros del Web » Programando para Internet » PHP »

¿Por qué me aparece parte de una consulta en pantalla?

Estas en el tema de ¿Por qué me aparece parte de una consulta en pantalla? en el foro de PHP en Foros del Web. Hola, estoy modificando una aplicacion, y donde se muestra el icono para exportar a excel o word, se le pasa una consulta para que tome ...
  #1 (permalink)  
Antiguo 17/12/2008, 04:45
 
Fecha de Ingreso: junio-2007
Ubicación: Cádiz
Mensajes: 369
Antigüedad: 16 años, 10 meses
Puntos: 7
¿Por qué me aparece parte de una consulta en pantalla?

Hola, estoy modificando una aplicacion, y donde se muestra el icono para exportar a excel o word, se le pasa una consulta para que tome los valores oportunos de la tabla al pasarlos, en diversos modulos de la aplicacion me va bien, sin problemas, pero en uno nuevo que implemente, junto a los iconos me muestra por pantalla parte de la consulta, como si fuera parte el echo...a ver si veis el error...

Código PHP:
if ($Exportar=="S")
{

               echo 
"<div border='0' WIDTH='100%' align='left'>";
               echo 
"<tr><td align='right' valign='center'>EXPORTAR";
               echo 
"<br>";
               echo 
"<a href='exportar.php?sql=$q'>";
               echo     
"<img src='./images/excel.gif' alt='EXPORTAR a EXCEL' border='0'>";
               echo 
"</a>";
               echo 
"<a href='exportar.php?sql=$q&w=1'><img src='./images/word.gif' alt='EXPORTAR a WORD' border='0'></a>";
               echo
"</td></tr></div><br><br><br><br>";

Imprimo la consulta y muestra esto:
consulta: SELECT * FROM ordenes WHERE ( Extra13 = 'si' AND Extra10 <> '' AND (Estado <> '6' AND Estado <>'0') ) ORDER BY Entrega, ID DESC, Fecha_Entrada DESC LIMIT 0,10


supuestamente el error estará en el formato de la cnsulta "$q", pero no logro encontrarlo...esto es lo que me sale...


Última edición por manguiti; 17/12/2008 a las 04:50
  #2 (permalink)  
Antiguo 17/12/2008, 04:55
 
Fecha de Ingreso: junio-2007
Ubicación: Cádiz
Mensajes: 369
Antigüedad: 16 años, 10 meses
Puntos: 7
Respuesta: ¿Por qué me aparece parte de una consulta en pantalla?

Me contesto yo solo, porque he descubierto el "fallo", ya que al introducir el operador de comparacion <> "termina" con la cadena...no se si sabeis como solucionarlo...por qué si pongo != no lo reconoce como operador no??
  #3 (permalink)  
Antiguo 17/12/2008, 04:58
 
Fecha de Ingreso: julio-2005
Ubicación: Buenos Aires, Argentina
Mensajes: 1.304
Antigüedad: 18 años, 9 meses
Puntos: 6
Respuesta: ¿Por qué me aparece parte de una consulta en pantalla?

El problema es por los caracteres <> de la consulta, se soluciona facil pero.....

¡¡NO PASES LA CONSULTA POR LA URL!!


Solo pasa los parámetros, la consulta armala desde exportar.php con los parámetros que te lleguen.
__________________
Federico.

Mi página: www.jourmoly.com.ar
  #4 (permalink)  
Antiguo 17/12/2008, 05:12
 
Fecha de Ingreso: junio-2007
Ubicación: Cádiz
Mensajes: 369
Antigüedad: 16 años, 10 meses
Puntos: 7
Respuesta: ¿Por qué me aparece parte de una consulta en pantalla?

es una aplicacion de una oficina, no croe que corra peligro pasar esa consulta por la url, además de que yo no lo he hecho...como se corregiría??
  #5 (permalink)  
Antiguo 17/12/2008, 06:02
Avatar de chitoso  
Fecha de Ingreso: mayo-2008
Ubicación: Montevideo, Uruguay
Mensajes: 205
Antigüedad: 15 años, 11 meses
Puntos: 5
Respuesta: ¿Por qué me aparece parte de una consulta en pantalla?

Tendrías que cambiar exportar.php?sql=$q por exportar.php

Y pasar el SQL dentro del script exportar.php. Vas a ver que captura la variable por GET (porque la pasas por url), asi:

Código PHP:
$consulta $_GET['sql']; 
La pones dentro del script, así:

Código PHP:
$consulta 'SELECT... FROM... WHERE...'
__________________
Pasión por la Música
  #6 (permalink)  
Antiguo 17/12/2008, 07:00
 
Fecha de Ingreso: julio-2005
Ubicación: Buenos Aires, Argentina
Mensajes: 1.304
Antigüedad: 18 años, 9 meses
Puntos: 6
Respuesta: ¿Por qué me aparece parte de una consulta en pantalla?

Para emparchar el error, con la funcion urlencode cuando armas el enlace y urldecode para recibir la variable en el otro archivo.

Para hacerlo bien, solo deberias pasar los parametros por GET y en exportar.php aprovecharlos para armar la consulta.
__________________
Federico.

Mi página: www.jourmoly.com.ar
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 03:24.