Ich weiss es nicht genau, aber was macht diese 1 in deinem Stirng?
"...WHERE 1..." where was gleich 1?
Auch irretiert mich dein $searchcode = $searchcode.'"';.. wo ist da der Sinn?
Genrell würde ich sagen solltest du ersteinmal auch alle Eingaben checken (kann aber auch sein dass du das darüber -für mich unsichtbar- gemacht hast) und Dir ERST(!) Den String zusammensetzt und DANACH die SQL-Abfrage machst:
$erste = "Obst='Apfel'";
$zweite = "Gemüse='Möhren'";
$dritte = "BAckware='Brot'";
SELECT * FROM x WHERE $erste && $zweite && $dritte ORDER BY date DESC
Ansonsten... mh
ciao