PHP URL paramètres GET, s'ils existent, les remplacer?
Essaie de faire une recherche avancée, avec le tri des différentes options ASC ou DESC.
Exemple d'URL:
search.php?accom_type=x&no_rooms=x&rooms_total=x&prop_area=x&rent_less=&rent_more=&available=&go=Search
&sd=a
Souligné en gras est &sd (sens de tri). La précédente variables sont transmises par l'intermédiaire d'un formulaire qui est rempli.
Maintenant, j'ai des liens de ce type..
<a href="<?=$_SERVER['REQUEST_URI']?>&sd=a">ASC</a>|<a href="<?=$_SERVER['REQUEST_URI']?>&sd=d">DESC</a>
Ce qui est évidemment faux, parce que je suis en utilisant REQUEST_URI
- parce que si une personne change après c'est d'abord définir l'URL sera:
&sd=a&sd=d
Je suis sûr que j'ai rencontré ce problème avant, mais ne peut pas tout à fait penser à comment je l'ai résolu.
Comment puis-je vérifier si un GET est déjà défini (sd) et, dans l'affirmative, de le modifier, sinon, ajouter à la fin de l'URL, pour produire les liens indiqués ci-dessus.
Edit: Peut-être une capture d'écran qui pourraient aider à comprendre:
http://dl.dropbox.com/u/10591127/Capture.PNG
Cheers,
Matt
Une instruction si il fonctionne parfaitement. Utilisation
isset()
pour vérifier si une variable est définie.Ne résoudrait pas le problème de remplacer la _GET
OriginalL'auteur Matt | 2011-02-05
Vous devez vous connecter pour publier un commentaire.
Vous pouvez utiliser le $_GET superglobale pour obtenir chaque individu est variable. Si vous mettez cela dans un tableau, vous pouvez remplacer n'importe quelle valeur en un peu mise de nouveau:
Ensuite, il suffit de créer une fonction simple createSortByLink($sortby) { ...
OriginalL'auteur GolezTrol