2014-07-14 26 views
-2

嗨,我认为这是一个简单的问题来解决,但我不知道在哪里寻找答案。注入字符串中的单词之间的加号

我试图通过一个简单的HTML表单向YouTube提交一个搜索条件。只要搜索字词限于一个单词,如苏打水或音乐,一切都可以正常工作。但是,如果用户输入的搜索词多于一个单词,如冷苏打或古典音乐,则不会返回结果。我注意到,在YouTube本身就是一个加号,就会自动词在搜索字符串插入......所以我尝试了这一点,通过使我的搜索词恒定

$search_term = "cold+soda"; 

,一切工作正常。所以我的问题是有这个代码:

if(isset($_POST["search_term"])) { 
$search_term = $_POST['search_term']; 
}else {$search_term = $_GET['search_term'];} 

我将如何采取下一步行动,并自动插入多个搜索词,用户可能输入之间的加号(+)?任何帮助将不胜感激!

+1

['urlencode()来'](http://php.net/manual/function.urlencode.php)甚至更好(IMO)['http_build_query ()'](http://php.net/manual/function.http-build-query.php) – Phil

+1

显示如何提交查询?如果你正在创建一个URL查询字符串,你应该使用'urlencode()',它会自动处理这个。 – Barmar

+0

非常感谢...这是一个非常简单的修复! –

回答

1

可以使用进行urlencode PHP的功能

urlencode($_GET['search_term']) 
+0

感谢您的帮助! –

相关问题