Se ricostruisci la query così come la costruisce lui, ti accorgi subito dell'errore.

PRova a mettere nei value 1, 2 e 3

E poi:

codice:
$sqlinterr="select id, marca, nome_prodotto, prezzo, descrizione, link_produttore, immagine, disponibilita, garanzia from listino"; 

if ($p=="1")
  $sqlinterr.=" where categoria='palm' and prezzo <1000";  
else
if ($p=="2")
  $sqlinterr.=" where categoria='palm' and prezzo >=1000 and prezzo<1500";  
else
if ($p=="2")
  $sqlinterr.=" where categoria='palm' and prezzo >=1500";