Erro PDO
Ao fazer o filtro ocorre esse erro , quando removo as condições que coloquei filtra normal
-
dados: []
-
erro: "SQLSTATE[HY093]: Invalid parameter number: number of bound variables does not match number of tokens"
-
total: 0
-
<?php
/**
* SAS/Mateusaires
* mateusaires@brisanet.com.br
* Build:20152109
**/
session_start();
$sessao = unserialize($_SESSION['SESSION_USUARIO']);
if($sessao == 1){
echo 'DEU ERRO';
}
else
{
$responsavel = $sessao['nome']; //nome do usuario da sessao.
$id_super = $sessao['id']; //nome do usuario da sessao.
}
if($_POST){
try {
require('../../autoLoad.php');
$buscar = new Buscar();
$tabela = 't_erros_cobranca';
if( isset($_POST['action']) AND $_POST['action'] == 'GET_VALUES' ){
$pdo = $connection->prepare("
SELECT *
FROM t_erros_cobranca
WHERE id=:id
");
$pdo->bindParam(':id', $_POST['id']);
$pdo->execute();
$linhas = $pdo->fetch(PDO::FETCH_OBJ);
echo json_encode( array('success'=>true, 'dados'=>$linhas) );
}
else{
$pag = new Paginar($_POST);
$page = $pag->getPage();
$start = $pag->getStart();
$limit = $pag->getLimit();
$sort = $pag->getSort();
$order = $pag->getOrder();
$result = array();
if(isset($_POST['action']) AND $_POST['action'] == 'FILTER'){
$buscar->setBusca(array('Cod_Contrato', 't_erros_cobranca.Cod_Contrato'), $_POST['Cod_Contrato'], 'like');
$buscar->setBusca(array('Cliente', 't_erros_cobranca.Cliente'), $_POST['Cliente'], 'like');
$buscar->setBusca(array('Cidade', 't_erros_cobranca.Cidade'), $_POST['Cidade'], 'like');
$buscar->setBusca(array('Identificado_por', 't_erros_cobranca.Identificado_por'), $_POST['Identificado_por'], 'like');
$buscar->setBusca(array('Responsavel', 't_erros_cobranca.Responsavel'), $_POST['Responsavel'], 'like');
$buscar->setBusca(array('Data', 't_erros_cobranca.Data'), $_POST['Data'], 'like');
$buscar->setBusca(array('Descricao_Erro', 't_erros_cobranca.Descricao_Erro'), $_POST['Descricao_Erro'], 'like');
$buscar->setBusca(array('Status', 't_erros_cobranca.Status'), $_POST['Status'], 'like');
$buscar->setBusca(array('Mes', 't_erros_cobranca.Mes'), $_POST['Mes'], 'like');
$buscar->setBusca(array('Ano', 't_erros_cobranca.Ano'), $_POST['Ano'], 'like');
}
if (isset($_POST['sort']))
{
$sortJson = json_decode( $_POST['sort'] );
$sort = trim(rtrim(addslashes($sortJson[0]->property )));
$order = trim(rtrim(addslashes( $sortJson[0]->direction )));
}
$filtro = $buscar->getSql();
$pdo = $connection->prepare("
SELECT count(*) as total
FROM t_erros_cobranca
{$filtro};
");
$pdo->execute( $buscar->getArrayExecute() );
$query = $pdo->fetch(PDO::FETCH_OBJ);
$countRow = $query->total;
$pdo = $connection->prepare("
SELECT t_erros_cobranca.*
FROM t_erros_cobranca
WHERE :id_super = 106 || Responsavel =:responsavel
{$filtro}
ORDER BY {$sort} {$order}
LIMIT {$start}, {$limit};
");
$pdo->bindParam(':responsavel', $responsavel);
$pdo->bindParam(':id_super', $id_super);
$pdo->execute( $buscar->getArrayExecute() );
$query = $pdo->fetchAll(PDO::FETCH_OBJ);
$result["total"] = $countRow;
$result["dados"] = $query;
echo json_encode($result);
}
}
catch (PDOException $e) {
echo json_encode(array('dados'=>array(),'total'=>0, 'erro'=>$e->getMessage()));
}
}
?>Discussão (1)
Carregando comentários...