Ver Mensaje Individual
  #9 (permalink)  
Antiguo 25/10/2013, 19:27
Avatar de gnzsoloyo
gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 18 años, 10 meses
Puntos: 2658
Respuesta: Porque no Funciona? error en consulta

Vamos a intentar una limpieza de codigo basura:
Código PHP:
 <?php
error_reporting
(E_ERROR | E_WARNING | E_PARSE);

mysql_connect("localhost", "root", "");
mysql_select_db("dashboard");
$sql = mysql_query("SELECT site_id FROM granjas where granja_tipo = 2");
while (
$row = mysql_fetch_array($sql)) {
    
$granja[] = $row['site_id'];
    
$i++;
}
echo 
implode(",", $granja) . "<br>";
echo 
"Las Granjas son " . $i . "<br>";
$sql2 = mysql_query("SELECT DISTINCT YEAR(evento) anio FROM partos_server");
while (
$row = mysql_fetch_array($sql2)) {
    
$anio[] = $row['anio'];
    
$a++;
}
echo 
implode(",", $anio) . "<br>";
echo 
"Los Años son " . $a . "<br>";

echo 
"<table>";
echo 
"<tr>";
echo 
"<td>Sitio</td>";
echo 
"<td>prom Nacido</td>";
echo 
"<td>Fecha</td>";
echo 
"<td>Semana</td>";
echo 
"</tr>";
for (
$j = 0; $j < $i; $j++) {
    for (
$b = 0; $b < $a; $b++) {
        
$s = 0;
        unset(
$semana);

        
$sql3 = mysql_query("SELECT DISTINCT(semana) as semana FROM partos_server where YEAR(evento)=" .
            
$anio[$b]);
        while (
$row = mysql_fetch_array($sql3)) {
            
$semana[] = $row['semana'];
            
$s++;
        }

        echo 
implode(",", $semana) . " AÑO " . $anio[$b] . "<br>";
        for (
$t = 0; $t < $s; $t++) {
            
$qry = "SELECT AVG(vivos) promedio, site_id, YEAR(evento) anio ";
            
$qry .= " FROM `partos_server` ";
            
$qry .= " WHERE site_id = ".$granja[$j]." and YEAR(evento) = ".$anio[$b]." AND semana = ".$semana[$t];
            
$query = mysql_query($qry) or die("Error en Consulta.- " . mysql_error());
            echo 
$qry."<br>";
            if(
$query)
                {
                while (
$reg = mysql_fetch_array($query, MYSQL_BOTH))
                    {
                    echo 
"<tr>";
                    echo 
"<td>" . $site = $reg['site_id'] . "</td>";
                    echo 
"<td>" . $promedio = round($reg['promedio'], 2) . "</td>";
                    echo 
"<td>" . $anio = $reg['anio'] . "</td>";
                    echo 
"<td>" . $semana = $reg['semana'] . "</td>";
                    }
                echo 
"</tr>";
               }
        }
    }

}
echo 
"</table>";  
?>
Lo que quisiera estacar es que el error que estás recibiendo no pertenece a la query que ejecutas en esta instancia, ya que en ninguna parte de ella aparece este bloque:
Cita:
'=< and semana = 't'
que es el indicado como cercano al error. Si hay un error, en otras palabras, es en alguna parte posterior a estas queries.
La única forma en que se pueda producir es que en alguna parte haya una consulta que contenga el "<=", y que esa consulta esté usando una variable vacía o nula, lo que explicaría que no haya ningún valor antes del AND.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)