Kom ihåg mig?
Home Menu

Menu


Få hela url-querystring och ta bort vissa delar

 
Ämnesverktyg Visningsalternativ
Oläst 2013-03-31, 19:50 #1
secag secag är inte uppkopplad
Medlem
 
Reg.datum: Nov 2012
Inlägg: 211
secag secag är inte uppkopplad
Medlem
 
Reg.datum: Nov 2012
Inlägg: 211
Standard Få hela url-querystring och ta bort vissa delar

Säg att du har en url som denna:

http://www.koskit.se?frukt=banan&grö...=v&v=t&ttt=fff
Förnkelat ser det ut såhär:
www.koskit.se?
frukt=banan&
grönsak=äpple&
färg=brun&
typ=hård&
c=v&
v=t&
ttt=fff

Och nu vill jag ha ut hela url-strängen, alltså allting som kommer efter '?'. Detta går ju bra med $_SERVER["QUERY_STRING"] men om jag inte villa ha vissa delar, som t.ex. färg=brun och v=t, hur skriver jag då?
secag är inte uppkopplad   Svara med citatSvara med citat
Oläst 2013-03-31, 20:07 #2
yakuzaemmes avatar
yakuzaemme yakuzaemme är inte uppkopplad
Mycket flitig postare
 
Reg.datum: Jun 2012
Inlägg: 773
yakuzaemme yakuzaemme är inte uppkopplad
Mycket flitig postare
yakuzaemmes avatar
 
Reg.datum: Jun 2012
Inlägg: 773
Är det $_GET du söker?
yakuzaemme är inte uppkopplad   Svara med citatSvara med citat
Oläst 2013-03-31, 20:14 #3
secag secag är inte uppkopplad
Medlem
 
Reg.datum: Nov 2012
Inlägg: 211
secag secag är inte uppkopplad
Medlem
 
Reg.datum: Nov 2012
Inlägg: 211
Jo men jag hade löst det innan med parse_url och någon html_build_query funktion. men ja kommer inte ihåg hur jag gjorde.

Och sen finns det många $_GET som finns eller inte kommer finnas med i strängen.
secag är inte uppkopplad   Svara med citatSvara med citat
Oläst 2013-03-31, 20:24 #4
yakuzaemmes avatar
yakuzaemme yakuzaemme är inte uppkopplad
Mycket flitig postare
 
Reg.datum: Jun 2012
Inlägg: 773
yakuzaemme yakuzaemme är inte uppkopplad
Mycket flitig postare
yakuzaemmes avatar
 
Reg.datum: Jun 2012
Inlägg: 773
Citat:
Ursprungligen postat av secag Visa inlägg
Jo men jag hade löst det innan med parse_url och någon html_build_query funktion. men ja kommer inte ihåg hur jag gjorde.

Och sen finns det många $_GET som finns eller inte kommer finnas med i strängen.
Men jag utgår från att du vet vilka du vill/inte vill ha med? Kör bara unset på de du inte vill ha med, så har du $_GET-arrayen med enbart värden du vill - eller?
yakuzaemme är inte uppkopplad   Svara med citatSvara med citat
Oläst 2013-03-31, 20:43 #5
secag secag är inte uppkopplad
Medlem
 
Reg.datum: Nov 2012
Inlägg: 211
secag secag är inte uppkopplad
Medlem
 
Reg.datum: Nov 2012
Inlägg: 211
Men det blir så fulkod Minns att ja kunde använda parse_url för det på något sätt..
secag är inte uppkopplad   Svara med citatSvara med citat
Oläst 2013-03-31, 20:46 #6
secag secag är inte uppkopplad
Medlem
 
Reg.datum: Nov 2012
Inlägg: 211
secag secag är inte uppkopplad
Medlem
 
Reg.datum: Nov 2012
Inlägg: 211
Kan förklara mitt problem varför jag behöver detta. Nedan ser du en kod som fungerar.
PHP-kod:
<?php if($sort == "11") { echo "<strong>Billigast</strong>&nbsp;&nbsp;&nbsp;"; } else { ?> <a href='<?php echo base_url(); ?>search?o=1&b=1'>Billigast</a>&nbsp;&nbsp;&nbsp;<?php ?>
<?php 
if($sort == "10") { echo "<strong>Dyrast</strong>&nbsp;&nbsp;&nbsp;"; } else { ?> <a href='<?php echo base_url(); ?>search?o=1&b=0'>Dyraste</a>&nbsp;&nbsp;&nbsp;<?php ?>
<?php 
if($sort == "01") { echo "<strong>Äldsta</strong>&nbsp;&nbsp;&nbsp;"; } else { ?> <a href='<?php echo base_url(); ?>search?o=0&b=1'>Äldsta</a>&nbsp;&nbsp;&nbsp;<?php ?>
<?php 
if($sort == "00" || strlen($sort) == 0) { echo "<strong>Senaste</strong>&nbsp;&nbsp;&nbsp;"; } else { ?> <a href='<?php echo base_url(); ?>search?o=0&b=0'>Senaste</a>&nbsp;&nbsp;&nbsp;<?php ?>
Men istället för att skriva en statisk url: search?o=0&b=0 så vill jag också att de andra sökkriterna skall komma med. typ category=cars&location=sweden.

Man kan skriva o=0&b=0 + $_SERVER["QUERY_STRING"] men repeteras o=0&b=0 och det vill jag inte.
secag är inte uppkopplad   Svara med citatSvara med citat
Oläst 2013-03-31, 22:10 #7
secag secag är inte uppkopplad
Medlem
 
Reg.datum: Nov 2012
Inlägg: 211
secag secag är inte uppkopplad
Medlem
 
Reg.datum: Nov 2012
Inlägg: 211
Hittade min gamla kod! Det var inget. Här är koden för dom som letar efter liknande:

parse_str($_SERVER["QUERY_STRING"], $ar);
$data["query_string"] = http_build_query(array_diff_key($ar,array("o"=>"", "b"=>"")));
secag är inte uppkopplad   Svara med citatSvara med citat
Oläst 2013-04-01, 12:06 #8
Clarence Clarence är inte uppkopplad
Administratör
 
Reg.datum: Jan 2003
Inlägg: 1 974
Clarence Clarence är inte uppkopplad
Administratör
 
Reg.datum: Jan 2003
Inlägg: 1 974
Citat:
Ursprungligen postat av secag Visa inlägg
Hittade min gamla kod! Det var inget. Här är koden för dom som letar efter liknande:

parse_str($_SERVER["QUERY_STRING"], $ar);
$data["query_string"] = http_build_query(array_diff_key($ar,array("o"=>"", "b"=>"")));
$_GET är redan färdigparsad parameter-array av QUERY_STRING. Använd den istället för att göra om det som redan är gjort ...
Clarence är inte uppkopplad   Svara med citatSvara med citat
Oläst 2013-04-01, 12:23 #9
yakuzaemmes avatar
yakuzaemme yakuzaemme är inte uppkopplad
Mycket flitig postare
 
Reg.datum: Jun 2012
Inlägg: 773
yakuzaemme yakuzaemme är inte uppkopplad
Mycket flitig postare
yakuzaemmes avatar
 
Reg.datum: Jun 2012
Inlägg: 773
Citat:
Ursprungligen postat av secag Visa inlägg
Hittade min gamla kod! Det var inget. Här är koden för dom som letar efter liknande:

parse_str($_SERVER["QUERY_STRING"], $ar);
$data["query_string"] = http_build_query(array_diff_key($ar,array("o"=>"", "b"=>"")));
vs

Citat:
unset($_GET['o'], $_GET['b']);
http_build_query($_GET);
Vart är fulkoden?
yakuzaemme är inte uppkopplad   Svara med citatSvara med citat
Oläst 2013-04-01, 13:07 #10
Clarence Clarence är inte uppkopplad
Administratör
 
Reg.datum: Jan 2003
Inlägg: 1 974
Clarence Clarence är inte uppkopplad
Administratör
 
Reg.datum: Jan 2003
Inlägg: 1 974
Citat:
Ursprungligen postat av yakuzaemme Visa inlägg
vs



Vart är fulkoden?
Skulle föredra hans. Finns ingen anledning att förutsätta att hela _GET inte kommer behövas senare. Inte för att jag förespråkar att man ska använda _GET mer än en gång för att skapa ett Request-objekt (för bättre testbarhet), men när man ändå gör det så ska man absolut inte skriva över den för att skriva ut en URL ...
Clarence är inte uppkopplad   Svara med citatSvara med citat
Svara


Aktiva användare som för närvarande tittar på det här ämnet: 1 (0 medlemmar och 1 gäster)
 

Regler för att posta
Du får inte posta nya ämnen
Du får inte posta svar
Du får inte posta bifogade filer
Du får inte redigera dina inlägg

BB-kod är
Smilies är
[IMG]-kod är
HTML-kod är av

Forumhopp


Alla tider är GMT +2. Klockan är nu 17:38.

Programvara från: vBulletin® Version 3.8.2
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson
 
Copyright © 2017