2016-07-27 138 views
0

我不知道在我的錯誤,但它說排序是不確定的,也關於無效查詢時出現錯誤:ERREUR德syntaxePrès區德「GROUP BY商城ORDER BY計數器DESC」點菜LIGNE 1PHP變量未定義錯誤(但它被定義?)

這裏是我對有關商店的顯示代碼的摘錄。

if(isset($_GET['formSubmit'])) 
    { 
     $varStats = $_GET['formStats']; 
     $errorMessage = ""; 

      switch($varStats) 
      { 

      case "ByAMEX": $sort = "AMEX = 1"; break; 
      case "ByBDOTerminal": $sort = "BDOTerminal = 'YES'"; break; 
      case "ByResto": $sort = "Resto = 'YES'"; break; 
      case "ByCashOnly": $sort = "Cash = 'YES'"; break; 
      case "ByPOSNotSeen": $sort = "POSNotSeen = 'YES'"; break; 
      } 

      $conn = db_connect(); 
      sortMall($conn, $sort); 
      db_disconnect($conn); 

      exit(); 
    } 

下面是摘錄,我初始化排序功能:

function sortMall($conn, $sort) 
{ 
$table = "test"; 
$column1 = "StoreName"; 
$column2 = "Mall"; 


$query1 = "Select $column2, Count($column1) AS Counter from $table where $sort GROUP BY $column2 ORDER BY Counter DESC"; 

$result = mysqli_query($conn, $query1); 
    if ($result == FALSE) 
    { 
     echo "Invalid query: " . $conn->error; 

     echo "<br/>"; 
     return; 
    } 

我其實有另一種功能,幾乎不會有相同的語法,都是一樣的,它的工作原理。我不知道爲什麼不這樣做。

+0

哪裏是它告訴你關於未定義的變量的警告? –

+0

在腳本開始時將變量定義爲null。像$ variable = null; –

+0

它說,錯誤就行 sortMall($康恩,$排序); – AndyMarty

回答

0

$varStats可能不是你所定義的情況下,添加一個default情況

如果是這樣,$排序是沒有定義是你的問題

0

試試這個

if(isset($_GET['formSubmit'])) 
    { 
     $varStats = isset($_GET['formStats']) ? $_GET['formStats'] : ''; 
     $errorMessage = ""; 

      switch($varStats) 
      { 

      case "ByAMEX": $sort = "AMEX = 1"; break; 
      case "ByBDOTerminal": $sort = "BDOTerminal = 'YES'"; break; 
      case "ByResto": $sort = "Resto = 'YES'"; break; 
      case "ByCashOnly": $sort = "Cash = 'YES'"; break; 
      case "ByPOSNotSeen": $sort = "POSNotSeen = 'YES'"; break; 
      default: $sort = 'yourvalue';// default case 
      } 

      $conn = db_connect(); 
      sortMall($conn, $sort); 
      db_disconnect($conn); 

      exit(); 
    } 

可能是你的$sort未能從switch獲得價值

0

試試這個,

if(isset($_GET['formSubmit'])) 
{ 
    $varStats = isset($_GET['formStats']) ? $_GET['formStats'] : ''; 
    $errorMessage = ""; 
    $sort = "1=1"; 

     switch($varStats) 
     { 

     case "ByAMEX": $sort = "AMEX = 1"; break; 
     case "ByBDOTerminal": $sort = "BDOTerminal = 'YES'"; break; 
     case "ByResto": $sort = "Resto = 'YES'"; break; 
     case "ByCashOnly": $sort = "Cash = 'YES'"; break; 
     case "ByPOSNotSeen": $sort = "POSNotSeen = 'YES'"; break; 
     default: $sort = 'yourvalue';// default case 
     } 

     $conn = db_connect(); 
     sortMall($conn, $sort); 
     db_disconnect($conn); 

     exit(); 
}