al final he visualizado la query resultado de esta consulta y he visto que una variable siempre pasaba un "0", de ahi el error al hacer las consultas.
Código PHP:
$sql = "SELECT * FROM phpbazar_ads WHERE publicview=1";
if($_GET['catid'] != '')$sql .= " AND catid LIKE '%".$_GET['catid']."%'";
if($_GET['subcatid'] != '')$sql .= " AND subcatid LIKE '%".$_GET['subcatid']."%'";
if($_GET['subcat2id'] != '')$sql .= " AND subcat2id LIKE '%".$_GET['subcat2id']."%'";
if($_GET['formato'] != '')$sql .= " AND formato LIKE '%".$_GET['formato']."%'";
if($_GET['location'] != '')$sql .= " AND location LIKE '%".$_GET['location']."%'";
$sql .= "ORDER BY fecha DESC";
$resultados = mysql_query($sql);
//y luego el resto del codigo...
ahora he pasado esa variable en caso de no estar seleccionada de "0" a "null" y funciona correctamnete.
gracias todos por la informacion.