问题描述
我正在使用先前存在的产品构建产品,这是admincp中的页面。 我想知道为什么有时候我可以提取一个GPC变量,而有时候却不能,我在多个地方都遇到了这个问题,但这只是示例中的最小问题。
我可以通过以下方式拉动productid
:
$vbulletin->GPC['productid']
但是我无法拉catid
:
$vbulletin->GPC['catid']
$vbulletin->input->clean_array_gpc('r',array(
'productid' => TYPE_UINT,'catid' => TYPE_UINT
));
print_form_header('digigacp','dodeleteproduct');
construct_hidden_code('s',$vbulletin->session->vars['sessionhash']);
construct_hidden_code('adminhash',ADMINHASH);
construct_hidden_code('productid',$vbulletin->GPC['productid']);
construct_hidden_code('catid',$vbulletin->GPC['catid']);
print_table_header($vbphrase['confirm']);
print_description_row($vbphrase['are_you_sure']);
print_description_row('Product ID: ' . intval($vbulletin->GPC['productid']));
print_description_row('Category: ' . intval($vbulletin->GPC['catid']));
print_submit_row($vbphrase['yes'],'',2,$vbphrase['no']);
解决这个问题的一种方法是使用查询,但是由于我可以拉productid
,所以我不明白为什么当他们都通过提交时无法拉catid
相同的形式。
这是我目前解决此问题的方式:
$vbulletin->input->clean_array_gpc('r',array(
'productid' => TYPE_UINT,'catid' => TYPE_UINT
));
$info = $db->query_first("SELECT catid
FROM " . TABLE_PREFIX . "products
WHERE productid = " . intval($vbulletin->GPC['productid']) . "
");
print_form_header('digigacp','dodeleteproduct');
construct_hidden_code('s',$vbulletin->session->vars['sessionhash']);
construct_hidden_code('adminhash',ADMINHASH);
construct_hidden_code('productid',$vbulletin->GPC['productid']);
construct_hidden_code('catid',$vbulletin->GPC['catid']);
print_table_header($vbphrase['confirm']);
print_description_row($vbphrase['are_you_sure']);
print_description_row('Product ID: ' . intval($vbulletin->GPC['productid']));
print_description_row('Category: ' . $info['catid']);
print_submit_row($vbphrase['yes'],$vbphrase['no']);
我也在vBulletin论坛上问过(它不再是一个蓬勃发展的社区),并且还阅读了我能找到的有关THIS PAGE最有用的任何页面。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)