PHP变量未定义错误(但它被定义?)
问题描述:
我不知道在我的错误,但它说排序是不确定的,也关于无效查询时出现错误: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;
}
我其实有另一种功能,几乎不会有相同的语法,都是一样的,它的工作原理。我不知道为什么不这样做。
答
$varStats
可能不是你所定义的情况下,添加一个default
情况
如果是这样,$排序是没有定义是你的问题
答
试试这个
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();
}
哪里是它告诉你关于未定义的变量的警告? –
在脚本开始时将变量定义为null。像$ variable = null; –
它说,错误就行 sortMall($康恩,$排序); – AndyMarty