0

私のサイトの次のフォーム

<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 を渡すにはどうすればよいですか?

4

1 に答える 1

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();
});
于 2013-05-31T00:48:09.127 に答える