2015-06-25 2 views
1

URL-адреса кодируются с использованием urlencode().Передача строкового значения, кодированного URL

www.myweb.com/pahe.html?artist=Taylor+Swift

Я захватывая строковое значение, чтобы иметь возможность пройти через JQuery-х $post() на PHP

$.post(my.php', 
    { word:"Taylor Swift" }, 

Как может Я передаю строку как Taylor Swift вместо Taylor+Swift?

+6

Использование urldecode(). –

+0

'+' - это кодированное пространство в URL-параметре. – Phylogenesis

+0

@ VlastislavNovák благодарит. это можно сделать в моем html? Не могли бы вы объяснить немного больше. :) – Becky

ответ

1

Вы можете использовать str_replace, чтобы заменить все + пробелами:

$artist = "Taylor+Swift"; 
echo urldecode($artist); // Taylor Swift 

JavaScript/HTML

Если у вас нет доступа к серверной стороне. Вы можете сделать:

{ word: "Taylor+Swift".replace(/+/g, ' ') } 
+0

спасибо. Итак, '.replace (/ +/g, '')' заменяет все знаки '+' в строке? – Becky

+0

@Becky да точно – Downgoat

0

Вы можете попробовать это: функция

urldecode($url); 
+0

спасибо. куда это могло пойти? в моем html (где я беру параметры строки?) – Becky

+0

Но в моем вопросе я сказал: «Я захватываю строковое значение, чтобы иметь возможность передавать через jQuery $ post() в php'? – Becky