Codice PHP:
if (!isset($_POST['autore']))
{
$autore "%";
}
else
{
$autore $_POST['autore'];

questo controllo verifica se la variabile 'autore' passata attraverso POST esiste, ed infatti esiste (anche se è vuota).
questo controllo insomma non ti dice se la variabile è vuota.

il controllo per eccellenza è questo:

Codice PHP:
if (isset($_POST['autore']) && !empty($_POST['autore']))
{
$autore $_POST['autore'];
}
else
{
$autore "%";