$suquery=$dbCon->prepare("select * from Table where ? LIKE ?");
Няма да работи според очакванията. Ще се преведе като:
SELECT * from table WHERE 'columnName' LIKE '%a%'
който връща всички редове, защото 'columnName' съдържа 'a'. 'columnName' е низ, а не действително име на колона.
Вторият ви опит е правилен, освен че имате допълнителни кавички в термина. Когато използвате параметри, нямате нужда от кавички. Решението е:
$term = "%".$_POST['searchTerm']."%";
$suquery=$dbCon->prepare("select * from Table where columnName LIKE ?");
$suquery->bind_param('s', $term);
$suquery->execute();