Как сказал Даан, вам не хватает места, и это, вероятно, причина, однако я добавлю:
Вам, вероятно, следует проверить результат вызова mysql_query (), потому что в настоящее время вы не знаете, происходит ли это сбой или нет, что может быть причиной вашей проблемы. Например:
$result = mysql_query('SELECT ...');
if (!$result) {
die(mysql_error());
}
while($row = mysql_fetch_array($result)) {
//etc.
Кроме того, вам не следует создавать оператор SQL на основе строк, поступивших из браузера, поскольку им нельзя доверять, и кто-то может добавить вредоносный SQL в то, что вы выполняете. См. SQL-инъекция .
Вы можете сначала проверить строку, что будет намного безопаснее и проще, потому что у вас есть только два возможных значения, например
if (isset($_GET['orderby']) && $_GET['orderby'] == 'DESC') {
$orderBy = 'DESC';
} else {
$orderBy = 'ASC';
}