我不确定我的错误在哪里,但它说排序未定义,还有一个关于无效查询的错误:语法错误"GROUP BY Mall ORDER BY Counter DESC"àla ligne 1
以下是我关于商店展示的代码摘录。
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;
}
事实上,我有另一个函数,它几乎用同样的语法做同样的事情。我不知道为什么没有。
$varStats
可能不是您定义的情况,请添加default
情况
如果是这样,$sort没有定义,这就是的问题
试试这个
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
中获取值
试试这个,
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();
}