此问题与on StackOverflow发现的其他问题直接相关。
我有同样的问题 - 但我不确定我是否可以将协议前缀作为另一个变量分开,如上面的问题所示。我正在使用GET操作,发送到另一个使用数据的页面(例如,index.php上的表单将GET提交给search.php)。
在索引页面上,用户可以键入要提交的数据(包括URL)(例如,文本字段和提交按钮)。由于URL的性质,我希望有一些人可以复制和粘贴 - 因此有时人们可能会包含http://,无论我是否想要它们。
如果GET请求中包含http:(例如search.php?q = http://google.com),那么我在search.php上收到403 Forbidden错误 - 这是我遇到问题的地方。< / p>
在JS之外,有没有办法在将请求发送到search.php之前从用户输入中删除或分离协议前缀(如果存在)?例如。用户点击提交后但是在将数据发送到另一个页面之前?
提前感谢您提出的任何答案或建议!
编辑:我知道我可以使用urlencode对网址进行编码 - 但是可以在实际发送数据/ GET请求之前完成吗?
答案 0 :(得分:0)
在javascript之外?第
但是,当数据发送到search.php时,您可以测试http://并删除它,不要包含它。