Ver Mensaje Individual
  #8 (permalink)  
Antiguo 10/01/2014, 13:46
Avatar de adryan310
adryan310
 
Fecha de Ingreso: septiembre-2012
Mensajes: 450
Antigüedad: 11 años, 8 meses
Puntos: 3
Pregunta Respuesta: Error en consulta a la b.d con PHP y PDO

Amigo ya vi cual es el error mira:

Tengo este codigo que me valida que el agente a buscar exista:
Código PHP:
$strQueryAgent "SELECT COUNT(*) AS 'CantRows', A.[IdAgent] FROM AGENT A WHERE A.[Agent] = '".$_POST['value']."' GROUP BY A.[IdAgent]";

$strDataAgent $strConnect->query$strQueryAgent );    
  
      
$dataAgent    $strDataAgent->fetch(PDO::FETCH_ASSOC);
      
$numRows      $dataAgent['CantRows'];
     
$IdAgent      $dataAgent['IdAgent']; 
Despues de eso yo hago la busqueda de todos los datos que deseo:
Código PHP:
if ($numRows 0) { 
     
$conn->close(); // libero la conexion           
               
$yesterday date('Y-m-d')." 00:00:01";
               
$today     date('Y-m-d')." 23:59:59";
                 
               
$strQueryGames "SELECT CONVERT(VARCHAR(8), G.[GradedDate] , 108) AS 'Time', 
                                        CONVERT(VARCHAR(MAX),G.[VisitorNumber]) + '/' + CONVERT(VARCHAR(MAX),G.[HomeNumber]) AS 'NumGame', G.[VisitorTeam] + ' @ ' +G.[HomeTeam] AS 'Teams', P.[PeriodDescription],
                                        CONVERT(VARCHAR(MAX),G.[VisitorScore]) + ' - ' + CONVERT(VARCHAR(MAX),G.[HomeScore]) AS 'Score', COUNT(*) AS 'Tickets',
                                        SUM(H.[RiskAmount]) AS 'Risk'
                                 FROM WAGERHEADER H, WAGERDETAIL D, GAME G, PERIOD P
                                 WHERE H.[IdWager] = D.[IdWager] AND 
                                       D.[IdGame]  = G.[IdGame]  AND 
                                       H.[SettledDate] >= CONVERT(datetime,('"
.$yesterday."')) AND 
                                       H.[SettledDate] <= CONVERT(datetime,('"
.$today."')) AND
                                       D.[IdSport] = P.[IdSport] AND
                                       D.[Period]  = P.[NumberOfPeriod] AND 
                                       H.[IdAgent] = 7 "
.
                                 GROUP BY G.[GradedDate], G.[VisitorNumber], G.[HomeNumber], G.[VisitorTeam], G.[HomeNumber], G.[HomeTeam], P.[PeriodDescription], G.[VisitorScore], G.[HomeScore]"
;
               
               
//error_log("class->search.php->strQueryGames = ".$strQueryGames);
            
try{
               
$strDataGames $strConnect->query$strQueryGames );    
               
               while(
$dataGames $strDataGames->fetch(PDO::FETCH_ASSOC)){
                     
$response  "<tr>";
                     
$response .= "<td>".$dataGames['Time']."</td>";
                     
$response .= "<td>".$dataGames['NumGame']."</td>";
                     
$response .= "<td>".$dataGames['Teams']."</td>";
                     
$response .= "<td>".$dataGames['PeriodDescription']."</td>";
                     
$response .= "<td>".$dataGames['Score']."</td>";
                     
$response .= "<td>".$dataGames['Tickets']."</td>";
                     
$response .= "<td>$".$dataGames['Risk']."</td>";
                     
$response .= "<td>-275</td>";
                     
$response .= "<td>-17517</td>";
                     
$response .= "<td><a href='#' rel='".$_POST['value']."' onClick='openInfoAgent(this);'>".$_POST['value']."</a></td>";
                     
$response .= "</tr>";    
               }
            }catch(
PDOException $e){
                
error_log("class->search.php->PDOException = ".$e);
            }
    }else{
                     
$response  "<tr>";
                     
$response .= "<td colspan='10'><span class='alert-no-data'>No data to display</span></td>";
                     
$response .= "</tr>";    
          }
                        
$conn->close();
     
                echo 
$response
El problema es que cuando hago la primera consulta esta queda en ejecucion y debo cerrarla pero aun asi me sigue dando error si quito la primera consulta la segunda funciona bien pero debo de validar lo primero entonces no se xq el error persiste si ya libere la conexion ?