Puede estar en dos lados:
1) No tienes ningún registro en la tabla que cumpla las condiciones que le estás metiendo.
2) Está retornando un error porque no queda bien escrita la consulta.
En cualquiera de las dos situaciones, por lo menos deberías verificar que lo que
realmente tiene la consulta es lo que tu
supones que tiene:
Código PHP:
$cadena="";
foreach($array as $key => $i)
{
$cadena.="'".$key."'='".$i."' AND ";
}
$cadenaTotal=substr($cadena,0,-4);
$consulta="SELECT * from tabla1 where $cadenaTotal";
echo $consulta;
Si la consult está bien construida, pues simplemente no hay registros que cumplan eso.
Captura lo que tiene la variable en algun momento, y postealo acá. Puede haber otros errores escondidos producto de lo que las variables de entrada contienen, que rompa el SQL (SQL no es PHP, recuérdalo).
Nunca asumas que lo que está es lo que ingresas. Verificalo primero.