Foros del Web » Programando para Internet » PHP »

error Query was empty

Estas en el tema de error Query was empty en el foro de PHP en Foros del Web. hola yo d eneuvo :P saludos a todos miren ya mejorando el codigo ahora cuando quiero ver el resultado me sale Query was empty que ...
  #1 (permalink)  
Antiguo 14/12/2007, 07:15
Avatar de liliancita  
Fecha de Ingreso: diciembre-2007
Mensajes: 189
Antigüedad: 16 años, 4 meses
Puntos: 0
Pregunta error Query was empty

hola

yo d eneuvo :P

saludos a todos

miren ya mejorando el codigo ahora cuando quiero ver el resultado me sale Query was empty que tendre malo o em faltara?


Código PHP:
$sql=mysql_query("select * from filtros where nom= x and id= y;"); 


while ($row = mysql_fetch_array($sql) ){ 


if (campo == fase) $sql1 .= "fase = ".$row[valor]." OR "; 
if (campo == sitio) $sql2 .= "sitio = ".$row[valor]." OR "; 
if (campo == zona) $sql3 .= "zona = ".$row[valor]." OR "; 

}

$sql1 = substr($sql1, 0, strlen($sql1)-3);

$SQL = mysql_query("SELECT * FROM ab WHERE ($sql1) AND ($sql2) AND ($sql3); ");


$resultado = mysql_query($SQL) or die ($SQL .mysql_error()."" ) ; 

while ($tmp = mysql_fetch_array($SQL)){
                        
?>
 <td><? echo $tmp['cod_sitio'] ;?></td> 
 <td><? echo $tmp['nombre'] ;?></td> 
  <td><? echo $tmp['ubicacion'] ;?></td> 
 <td><? echo $tmp['region'] ;?></td>

<?}?>
  #2 (permalink)  
Antiguo 14/12/2007, 07:25
Avatar de rogertm
Mod->Cuba
 
Fecha de Ingreso: julio-2005
Ubicación: /home/Cuba/Habana/rogertm/
Mensajes: 2.922
Antigüedad: 18 años, 9 meses
Puntos: 638
Re: error Query was empty

hola liliancita, a simple vista puedo ver que la primera consulta tiene un pequeño error, deberia quedar asi:
Código PHP:
$sql mysql_query("select * from filtros where nom = 'x' and id= 'y'"); 
te faltaban las comillas simples en los valores de nom e id, ademas de un ; dentro de la consulta que no va.
prueba a ver si es eso, la segunda consulta no la entiendo, tal vez si explicaras que quieres lograr....

saludos y suerte
__________________
Friki y Blogger por Cuenta Propia:213
Twenty'em: Theming is Prose
  #3 (permalink)  
Antiguo 14/12/2007, 08:10
Avatar de liliancita  
Fecha de Ingreso: diciembre-2007
Mensajes: 189
Antigüedad: 16 años, 4 meses
Puntos: 0
Re: error Query was empty

hola

si le puse las comillas grax


sigue el mismo error, te cuento que la idea es hacer interseccion es decir en la primera consulat obtengo lso valores los cuales comapro y concateno en los if y en la segunda esos resultados los comparo osea intersecto paar ver si concuerdan en la tabla esa esa la idea


saldos :)
  #4 (permalink)  
Antiguo 14/12/2007, 08:36
Avatar de bluetorch  
Fecha de Ingreso: diciembre-2007
Mensajes: 26
Antigüedad: 16 años, 4 meses
Puntos: 1
Re: error Query was empty

Código PHP:
if (campo == fase$sql1 .= "fase = ".$row[valor]." OR "
if (
campo == sitio$sql2 .= "sitio = ".$row[valor]." OR "
if (
campo == zona$sql3 .= "zona = ".$row[valor]." OR "
tambien te estas olvidando de las llaves del begin y end de los IFs { }

y no entiendo porque le pones los puntos de concatenacion antes del "=" cuando asignas a las variables de $sql1, $sql2 y $sql3 yles pones el OR que despues en la consulta del SQL les pones AND =S

hay algo que no me cierra, pero lo que si se es que la consulta SQL no te esta funcando.. y es obvio que el error esta en lo que te mande....

fijate...
  #5 (permalink)  
Antiguo 14/12/2007, 08:49
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Re: error Query was empty

El problema es que envias dos veces el Query:
Código PHP:
$SQL mysql_query("SELECT * FROM ab WHERE ($sql1) AND ($sql2) AND ($sql3); ");

$resultado mysql_query($SQL) or die ($SQL .mysql_error()."" ) ; 
En la primera le pasas el string con el query (correcto), pero en el segundo le pasas el resultado (un recurso o false si tiene error) y por ende te marca el error.

Saludos.
  #6 (permalink)  
Antiguo 14/12/2007, 09:52
Avatar de liliancita  
Fecha de Ingreso: diciembre-2007
Mensajes: 189
Antigüedad: 16 años, 4 meses
Puntos: 0
Re: error Query was empty

hola

1) quite la duplecidad del query

2) puse los parentesis pero presenta error Parse error: syntax error, unexpected '{', expecting '(' in C:\AppServ\www\sitio\ver_filtro.php on line 55
...asi q sin parentesis


3)sobre la cosnulta sql el AND es para unir la interseccion de sql1,sql2 y sql3 y obtener los valores que coiciden con la condicion

ahora el codigo esta asi
Código PHP:
$sql=mysql_query("select * from filtros where nom= x and id= y;");  


while ($row = mysql_fetch_array($sql) ){  


if (campo == fase) $sql1 .= "fase = ".$row[valor]." OR ";  
if (campo == sitio) $sql2 .= "sitio = ".$row[valor]." OR ";  
if (campo == zona) $sql3 .= "zona = ".$row[valor]." OR ";  



$sql1 = substr($sql1, 0, strlen($sql1)-3); 

$SQL = mysql_query("SELECT * FROM ab WHERE ($sql1) AND ($sql2) AND ($sql3); "); 


while ($tmp = mysql_fetch_array($SQL)){ 
                         
?> 
 <td><? echo $tmp['cod_sitio'] ;?></td>  
 <td><? echo $tmp['nombre'] ;?></td>  
  <td><? echo $tmp['ubicacion'] ;?></td>  
 <td><? echo $tmp['region'] ;?></td> 

<?}?>

y este es el error Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource


saludos
  #7 (permalink)  
Antiguo 14/12/2007, 10:26
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Re: error Query was empty

Prueba cambiando la sentencia para que te indique el error:
Código PHP:

$SQL 
mysql_query("SELECT * FROM ab WHERE ($sql1) AND ($sql2) AND ($sql3); ") or die( mysql_error() ); 
Saludos.
  #8 (permalink)  
Antiguo 14/12/2007, 11:27
Avatar de liliancita  
Fecha de Ingreso: diciembre-2007
Mensajes: 189
Antigüedad: 16 años, 4 meses
Puntos: 0
Re: error Query was empty

hola

el error que me indica es: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'AND AND )


salu2
  #9 (permalink)  
Antiguo 14/12/2007, 11:59
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Re: error Query was empty

El problema es muy claro, tienes dos AND AND juntos y eso ocasiona el problema, revisa como estas generando tu query.

Saludos.
  #10 (permalink)  
Antiguo 14/12/2007, 14:33
Avatar de liliancita  
Fecha de Ingreso: diciembre-2007
Mensajes: 189
Antigüedad: 16 años, 4 meses
Puntos: 0
Re: error Query was empty

ya mira le aregle variaspifias como comillas que em faltaban y quitar todos los or del if,
peor en cuento a los AND tengo que preguntar si estan vacios si es asi no tomarlos... como hago eso?

Código PHP:
    if ($tmp=$_POST['nom_filtro']){
     
     
     
$result=mysql_query("select * from filtros 
                         where nom_filtro = '"
.$tmp."'
                         and idpersona = '"
.$id."' ; ");


    while (
$row mysql_fetch_array($result)){

if (
campo_filtro == “fase”$sql1 .= "fase = ".$row[valor_filtro]." OR ";

if (
campo_filtro == “sitio”$sql2 .= "sitio = ".$row[valor_filtro]." OR ";

if (
campo_filtro == “zona”$sql3 .= "zona = ".$row[valor_filtro]." OR ";
}



$sql1 substr($sql10strlen($sql1)-3);
$sql2 substr($sql20strlen($sql2)-3);
$sql3 substr($sql30strlen($sql3)-3);

$nuevaSQL mysql_query("SELECT * FROM ab WHERE ($sql1) AND ($sql2) AND ($sql3); ")or die( mysql_error() );

while (
$tmp mysql_fetch_array($result)){ 
  #11 (permalink)  
Antiguo 14/12/2007, 15:44
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Re: error Query was empty

Puedes usar la función empty para detectar si una variable esta o no vacia.

Saludos.
  #12 (permalink)  
Antiguo 14/12/2007, 18:48
Usuario no validado
 
Fecha de Ingreso: julio-2003
Ubicación: <?="www.tuky.cl";?>
Mensajes: 132
Antigüedad: 20 años, 9 meses
Puntos: 4
Re: error Query was empty

mmm en la función de mysql_query yo siempre especifico la conexión... y también selecciono antes la base de datos... lo estás haciendo? quizás si, pero te pregunto por que no lo veo en el código publicado...

$result=mysql_query("select * from filtros
where nom_filtro = '".$tmp."'
and idpersona = '".$id."' ; ", $conexion);

será eso?

saludos,
tuky.-
  #13 (permalink)  
Antiguo 15/12/2007, 16:39
Avatar de liliancita  
Fecha de Ingreso: diciembre-2007
Mensajes: 189
Antigüedad: 16 años, 4 meses
Puntos: 0
Re: error Query was empty

hola

tengo un archivo aparte para la conexion con la bd conect.php y lo llamo con un include en el archivo

probe con el empty y la variable no esta vacia, creo que el error esat en lso AND = :(
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 19:15.