У меня есть URL-адрес, в котором querystring создается скриптом PHP. Различные значения отображаются в строке запроса.
В принципе, мне нужно удалить определенное значение из строки запроса, когда посетитель нажимает на ссылку или кнопку «удалить».
Итак, запрос выглядит следующим образом:
http://www.foo.com/script.php?bar1=green&bar2=blue
Но когда нажатие кнопки «Удалить» или «Удалить» выполняется пользователем, bar1=green
удаляется, а посетитель перенаправляется на следующий URL-адрес:
http://www.foo.com/script.php?bar2=blue
Я думал, что это будет легко использовать базовый HTML с формой или якорем, но я пока не смог это сделать.
Просто чтобы вы знали, у меня нет доступа к коду самого скрипта PHP; он размещается удаленно и вызывается на мою веб-страницу с помощью PHP-оболочки, использующей iframe.
Любые предложения очень ценятся.
Большое спасибо,
Matt
Вы можете удалить значение из строки запроса с помощью этого кода:
<?php function parseQueryString($url,$remove) { $infos=parse_url($url); $str=$infos["query"]; $op = array(); $pairs = explode("&", $str); foreach ($pairs as $pair) { list($k, $v) = array_map("urldecode", explode("=", $pair)); $op[$k] = $v; } if(isset($op[$remove])){ unset($op[$remove]); } return str_replace($str,http_build_query($op),$url); } echo parseQueryString( "http://www.foo.com/script.php?bar1=green&bar2=blue","bar2"); ?>
о<?php function parseQueryString($url,$remove) { $infos=parse_url($url); $str=$infos["query"]; $op = array(); $pairs = explode("&", $str); foreach ($pairs as $pair) { list($k, $v) = array_map("urldecode", explode("=", $pair)); $op[$k] = $v; } if(isset($op[$remove])){ unset($op[$remove]); } return str_replace($str,http_build_query($op),$url); } echo parseQueryString( "http://www.foo.com/script.php?bar1=green&bar2=blue","bar2"); ?>
о<?php function parseQueryString($url,$remove) { $infos=parse_url($url); $str=$infos["query"]; $op = array(); $pairs = explode("&", $str); foreach ($pairs as $pair) { list($k, $v) = array_map("urldecode", explode("=", $pair)); $op[$k] = $v; } if(isset($op[$remove])){ unset($op[$remove]); } return str_replace($str,http_build_query($op),$url); } echo parseQueryString( "http://www.foo.com/script.php?bar1=green&bar2=blue","bar2"); ?>
с<?php function parseQueryString($url,$remove) { $infos=parse_url($url); $str=$infos["query"]; $op = array(); $pairs = explode("&", $str); foreach ($pairs as $pair) { list($k, $v) = array_map("urldecode", explode("=", $pair)); $op[$k] = $v; } if(isset($op[$remove])){ unset($op[$remove]); } return str_replace($str,http_build_query($op),$url); } echo parseQueryString( "http://www.foo.com/script.php?bar1=green&bar2=blue","bar2"); ?>
Как я могу получить значения строки запроса в JavaScript? ,