0

注文に問題があります.. リクエストを s=10 または s11 に設定すると、ir は何もしません... リクエストに応じて $order を印刷しようとしましたが、うまくいきましたが、$sql= ($order) には表示されません。

 if(isset($_GET['s']) AND $_GET['s']==10)
                    {
                        $order=' ORDER BY a.saskanojuma_nr ASC';
                    }
 elseif(isset($_GET['s']) AND $_GET['s']==11)
                    {
                        $order=' ORDER BY a.saskanojuma_nr DESC';
                    }
                    else
                    {
                        $order=' ORDER by a.id desc';
                    }



                    $sql='SELECT a.projekta_id, a.saskanojuma_nr,  a.datums, a.akcepta_nr, a.objekta_autors FROM '.$table_prefix.'_saskanojumi a LEFT JOIN '.$table_prefix.'_projekti b ON b.id=a.projekta_id LEFT JOIN '.$table_prefix.'_objekti c ON c.id=b.objekta_id LEFT JOIN '.$table_prefix.'_kadastri d ON d.objekta_id=c.id LEFT JOIN '.$table_prefix.'_ipasnieki e ON e.objekta_id=c.id  '.$query.' AND  a.buvvaldes_id='.$_SESSION['buvvaldes_id'].' AND a.dzests=0 GROUP BY a.id '.$order.' ';
        $thiss=$GLOBALS['db']->query($sql);
4

2 に答える 2

1

ここに示されているコードは正しいようです。おそらく問題は別の場所にあります。

コードを段階的 にバンクマークし、どこに問題があるかを見つけようとします。

于 2012-04-18T09:00:23.360 に答える
0

PHPswitch/case構文を使用してみてください。

switch ($_GET['s']) {
  case 10:
  $order=' ORDER BY a.saskanojuma_nr ASC';
  break;

  case 11:
  $order=' ORDER BY a.saskanojuma_nr DESC';
  break;

  default:
  $order=' ORDER by a.id desc';
  break;
}

$_GET['s']が 10 または 11 でない場合、$order変数の値は ' default' ステートメントから取得されます。ORDER by a.id desc

于 2012-04-18T08:57:50.183 に答える