t.php 601 Bytes
<?php
function url($n){

$str = (isset($_GET['filter']) && strlen($_GET['filter'])>0) ? $_GET['filter'] : array();
$l = explode(';',$str);
$f=0;
foreach($l as $key=>$q){
 if($n==$q){$f++;unset($l[$key]);}
}

if($f==0)$l[] = $n;

sort($l);

$param = (count($l)) ? ("?filter=".implode(";",$l)) : null;
return "t.php" . $param;
}
?>sss
<a href="<?=url('f1');?>">sss</a>
<br>
<a href="<?=url('f5');?>">sss</a>
<br>
<a href="<?=url('f3');?>">sss</a>
<br>
<a href="<?=url('f4');?>">sss</a>
<br>
<a href="<?=url('y5');?>">sss</a>
<br>
<a href="<?=url('y3');?>">sss</a>
<br>
<a href="<?=url('y4');?>">sss</a>