如果通过URL传递变量,我使用以下内容为变量赋值:
if (!empty($_POST)) {
$sortBy = isset($_GET['sort']) ? $_GET['sort'] : 'mgap_ska_id';
}
这里是传递变量的地方:
$result = "SELECT mgap_ska_id, mgap_ska_id_name, SUM(DISTINCT mgap_growth) as growthtotal, SUM(DISTINCT mgap_recovery) as recovery FROM mgap_orders "
. "WHERE account_manager_id = '" . $_SESSION['account_manager_id'] . "' GROUP BY mgap_ska_id ORDER BY '".$sortBy. "' ";
如果变量未被传递,则该过程正常工作,但是当通过链接传递时,查询中的变量将被取消分配:
<a href = "customer_view.php?sort=mgap_ska_id_name">
任何人都可以看到我的错误在哪里吗?
仅供参考我在查询中使用和不使用引号进行了尝试。
使用解决方案进行编辑:
以下是我解决问题的方法:O检查POST和GET:
if (!empty($_GET) || !empty($_POST)) {
$sortBy = isset($_GET['sort']) ? $_GET['sort'] : 'mgap_ska_id';
} else {
$sortBy = 'mgap_ska_id';
}