I think your problem is missing quotes. Your sql should look like this:
$sql = "SELECT * FROM $table_name WHERE category = '$category' ORDER BY bus_name";
A few debugging tips:
To test whether the variable has been passed, put a line like this at the top of the page:
echo "category: $category<br>";
Then to check your sql:
echo "SQL: $sql";
If you're using Linux, you can just cut and paste the sql statement from the browser to mysql. That will tell you if there's a syntax error in the SQL statement.
HTH,
Beth