$letter = mysql_real_escape_string($letter);
$sql = "SELECT ID, FirstName, LastName FROM stafftest WHERE FirstName LIKE '" . $letter . "%'
OR LastName LIKE '" . $letter ."%'";
Все, что я сделал, это удалил первые знаки%.Знак процента указывает mysql, как заявление, чтобы соответствовать любому символу.По сути, вы говорите ему: «сопоставьте любой символ (ы) (включая начальный и конечный символы) и затем найдите букву L, затем сопоставьте любой символ (ы)»Изменение этого значения на один только% в конце решит вашу проблему.
Кроме того, рекомендуется использовать готовые выражения, если вы можете.Для этого пригодится PDO.