为什么它重定向回家?

时间:2013-05-31 00:46:35

标签: php .htaccess

我网站上的以下表格

<form name="vine" action="create.php" method="get">
<input name="id" type="text" value="Vine ID" id="id">
<br>
<input type="submit" value="Submit">
</form>

我的.htaccess包含以下内容

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([\w\d~%.:_\-]+)$ index.php?id=$1 [NC]

我在表单中提交的几乎所有内容都会将我带到create.php,除非我提交的字符串以“http://”开头。当它以“http://”开头时,它会将我重定向到我的主页。如何在不重定向主页的情况下在$ _GET中传递完整的URL?

1 个答案:

答案 0 :(得分:1)

您是否尝试过使用javascript内置函数encodeURI()和encodeURIComponent()?

这将为GET请求编码url。

如果你使用jQuery:

$(document).on("click","input[type='submit']",function(e) {
  e.preventDefault();
  $("#id").val(encodeURIComponent($("#id").val()));
  $(this).off('submit').submit();
});