После FROM идет имя таблицы, и получается, что это имя вы получаете извне, более того как значение поля формы - $('#glossary').val(). Это означает, что вы открываете двери для инъекции, когда можно подбирать иные имена таблиц базы, а угадав (благо на несуществующие ваш скрипт любезно выдаст ошибку), творить с вашей базой все что угодно.
Все данные пришедшие извне нельзя подставлять непосредственно в запрос как его параметры, их необходимо экранировать или приводить к соответствующему типу. Значения полученные извне и в дальнейшем используемые в запросе как его параметры также надо экранировать.
Если есть веские основания для указания имени таблицы в форме, то это должно быть только его часть, без префикса, и только на сервере формировать полное имя. А если еще это имя задается как вводимое в форму значение, то перед запросом не мешало бы удостовериться в наличие такой таблицы в базе.
Что касается сортировки, то здесь вообще не понятно о чем речь. Если это задание пользовательской сортировки записей в таблице, то не видно по коду операций для таких случаев ни на клиенте, ни на сервере.
|