Php 添加到用于类别筛选的参数
好的,我有一个关于PHP的问题,我不知道我是在做傻事,还是这比我想象的要困难得多:/ 所以我试图通过URL中的GET参数来过滤一些结果。我认为最好的方法就是像ebuyer.com那样做 当你按不同类别过滤搜索结果时,URl是这样建立的Php 添加到用于类别筛选的参数,php,Php,好的,我有一个关于PHP的问题,我不知道我是在做傻事,还是这比我想象的要困难得多:/ 所以我试图通过URL中的GET参数来过滤一些结果。我认为最好的方法就是像ebuyer.com那样做 当你按不同类别过滤搜索结果时,URl是这样建立的 filtercat=36,134,142,62 etc 它们如何添加到参数中,同时保留所选类别的其余部分 救命啊 我基本上是想在左侧边栏上创建什么内容,您可以在那里为搜索选择和取消选择过滤器 非常感谢您的回复 更新 下面是一些代码,但重复单击链接会导致相同值多次
filtercat=36,134,142,62 etc
它们如何添加到参数中,同时保留所选类别的其余部分
救命啊
我基本上是想在左侧边栏上创建什么内容,您可以在那里为搜索选择和取消选择过滤器
非常感谢您的回复
更新
下面是一些代码,但重复单击链接会导致相同值多次出现
e、 php?filtercat=361343636
如何停止此操作并在两者之间添加逗号,以便输出正确
e、 php?filtercat=36134等
<?php
$filter = $_GET['filtercat'];
$pieces = explode(",", $filter);
$edit_url = http_build_query( Array( 'filtercat' => ''.$pieces[0].$pieces[1].$pieces[2].'' ) );
echo($edit_url);
?>
然后在我的链接中
<a href="<?php echo('categories.php?'.$edit_url.'36'); ?>">36catagory</a>
<a href="<?php echo('categories.php?'.$edit_url.'134'); ?>">134catagory</a>
爆炸不起作用,因为没有逗号。。。整个事情真是一团糟,我真的很困惑 script.php?filtercat[]=36&filtercat[]=134另一个传递多个值的wat,就像用值序列化数组一样
$array = array('filtercat' =>
array(25, 32, 49)
);
$passme = serialize($array);
然后将$passme作为GET发送
<a href='test.php?val=<?php echo $passme; ?>'>Link</a>
将打印为:
排列
(
[filtercat]=>阵列
(
[0] => 25
[1] => 32
[2] => 49
)
)为什么不直接使用
http\u build\u query
来重建查询字符串?我假设您知道所有$\u GET
参数的值,那么,当您可以重建查询字符串时,为什么还要费心附加到查询字符串呢?此外,您可能需要
我想你的意思是“逗号”(,,,),而不是“角”。噢,谢谢你,内森:)
$serilized = $_GET['val'];
$array = unserialize($serialized);
$filter = $_GET['filtercat'];
$pieces = explode(',', $filter);
$edit_url = http_build_query( Array(
'filtercat' => implode(',', array_unique($pieces))
));