我正在使用jqGrid PHP处理一个表,我正在尝试使用SELECT
部分的变量将我的select语句设置为WHERE
。我有以下代码:
$groupid = isset($_SESSION['group']) ? $_SESSION['group'] : 1;
$query = "SELECT MEMBER_ID, FirstName, LastName, Email, Street1, City, State, Zip, Phone, MemberSince, ExpDate, group_GROUP_ID, membership_MEM_ID FROM member WHERE group_GROUP_ID = $groupid";
$grid->SelectCommand = $query;
在这种情况下,$groupid
为9,当使用9运行手动查询时,会返回4个结果。
上述方法不起作用,但当设置$query
等于以下(硬编码)时,表格会按预期返回4个结果。
$query = "SELECT MEMBER_ID, FirstName, LastName, Email, Street1, City, State, Zip, Phone, MemberSince, ExpDate, group_GROUP_ID, membership_MEM_ID FROM member WHERE group_GROUP_ID = 9";
我已经尝试了所有不同的方法来连接它,但没有一个工作。以下是我尝试过的(缩短版):
"... WHERE group_GROUP_ID = " . $groupid . "";
"... WHERE group_GROUP_ID = '" . $groupid . "'";
"... WHERE group_GROUP_ID = '$groupid'";
感谢您的帮助!
答案 0 :(得分:2)
这种情况发生在很多人身上,但经过3个小时的修修补补后,我发现了问题。
由于$ groupid基于会话变量,并且php脚本没有调用session_start()
,因此会话变量不可用。
我在脚本顶部调用session_start()
,我的第一个解决方案完美无缺。
很抱歉回答自己!