1) драйвер mysql_ уже не используется. Деприкэйтед с 5.х и окончательно выпилен в 7.х, используйте mysqli_ или PDO.
2)
давно мучаюсь с этим кодом
Просто не надо мучиться, надо читать документацию, в ней все есть, смотрите ORDER BY выражения.
3) Так писать запросы не желательно, у вас (скорее всего) невалидированые строки напрямую попадают в запрос, это прямой путь к инъекции. Используйте подготовленные выражения.